{
 "cells": [
  {
   "metadata": {},
   "cell_type": "markdown",
   "source": [
    "Copyright (c) MONAI Consortium  \n",
    "Licensed under the Apache License, Version 2.0 (the \"License\");  \n",
    "you may not use this file except in compliance with the License.  \n",
    "You may obtain a copy of the License at  \n",
    "&nbsp;&nbsp;&nbsp;&nbsp;http://www.apache.org/licenses/LICENSE-2.0  \n",
    "Unless required by applicable law or agreed to in writing, software  \n",
    "distributed under the License is distributed on an \"AS IS\" BASIS,  \n",
    "WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  \n",
    "See the License for the specific language governing permissions and  \n",
    "limitations under the License."
   ],
   "id": "1b975a3df0e39281"
  },
  {
   "cell_type": "markdown",
   "id": "f6090d00",
   "metadata": {},
   "source": [
    "# Anomaly Detection with Transformers\n",
    "\n",
    "This tutorial illustrates how to use MONAI to perform image-wise and localised anomaly detection with transformers based on the method proposed in Pinaya et al.[1].\n",
    "\n",
    "Here, we will work with the [MedNIST dataset](https://docs.monai.io/en/stable/apps.html#monai.apps.MedNISTDataset) available on MONAI, and similar to \"Experiment 2 – image-wise anomaly detection on 2D synthetic data\" from [1], we will train a general-purpose VQ-VAE (using all MEDNIST classes), and then a generative models (i.e., Transformer) on `HeadCT` images.\n",
    "\n",
    "We will compute the log-likelihood of images from the same class (in-distribution class) and images from other classes (out-of-distribution). We will also provide an example of performing localised anomaly detection with these trained models.\n",
    "\n",
    "[1] - [Pinaya et al. \"Unsupervised brain imaging 3D anomaly detection and segmentation with transformers\"](https://doi.org/10.1016/j.media.2022.102475)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "8b27924f",
   "metadata": {},
   "source": [
    "### Setup environment"
   ]
  },
  {
   "cell_type": "code",
   "id": "01787b4b",
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-05T12:16:33.896363Z",
     "start_time": "2024-09-05T12:16:27.871071Z"
    }
   },
   "source": [
    "!python -c \"import seaborn\" || pip install -q seaborn\n",
    "!python -c \"import monai\" || pip install -q \"monai-weekly[tqdm]\"\n",
    "!python -c \"import matplotlib\" || pip install -q matplotlib\n",
    "%matplotlib inline"
   ],
   "outputs": [],
   "execution_count": 1
  },
  {
   "cell_type": "markdown",
   "id": "56afab18",
   "metadata": {},
   "source": [
    "### Setup imports"
   ]
  },
  {
   "cell_type": "code",
   "id": "b6b0c79f",
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-05T12:16:37.876190Z",
     "start_time": "2024-09-05T12:16:35.388938Z"
    }
   },
   "source": [
    "import os\n",
    "import tempfile\n",
    "import time\n",
    "\n",
    "import matplotlib.pyplot as plt\n",
    "import numpy as np\n",
    "import seaborn as sns\n",
    "import torch\n",
    "import torch.nn.functional as F\n",
    "from monai import transforms\n",
    "from monai.apps import MedNISTDataset\n",
    "from monai.config import print_config\n",
    "from monai.data import DataLoader, Dataset\n",
    "from monai.utils import first, set_determinism\n",
    "from torch.nn import CrossEntropyLoss, L1Loss\n",
    "from tqdm import tqdm\n",
    "from monai.inferers import VQVAETransformerInferer\n",
    "from monai.networks.nets import VQVAE, DecoderOnlyTransformer\n",
    "from monai.utils.enums import OrderingType\n",
    "from monai.utils.ordering import Ordering\n",
    "\n",
    "print_config()"
   ],
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "MONAI version: 1.4.dev2434\n",
      "Numpy version: 1.26.4\n",
      "Pytorch version: 2.4.0+cu121\n",
      "MONAI flags: HAS_EXT = False, USE_COMPILED = False, USE_META_DICT = False\n",
      "MONAI rev id: dc611d231ba670004b1da1b011fe140375fb91af\n",
      "MONAI __file__: /home/<username>/monaigen-tutorials-v2/venv/lib/python3.11/site-packages/monai/__init__.py\n",
      "\n",
      "Optional dependencies:\n",
      "Pytorch Ignite version: NOT INSTALLED or UNKNOWN VERSION.\n",
      "ITK version: NOT INSTALLED or UNKNOWN VERSION.\n",
      "Nibabel version: 5.2.1\n",
      "scikit-image version: NOT INSTALLED or UNKNOWN VERSION.\n",
      "scipy version: NOT INSTALLED or UNKNOWN VERSION.\n",
      "Pillow version: 10.4.0\n",
      "Tensorboard version: 2.17.1\n",
      "gdown version: NOT INSTALLED or UNKNOWN VERSION.\n",
      "TorchVision version: NOT INSTALLED or UNKNOWN VERSION.\n",
      "tqdm version: 4.66.5\n",
      "lmdb version: NOT INSTALLED or UNKNOWN VERSION.\n",
      "psutil version: 6.0.0\n",
      "pandas version: 2.2.2\n",
      "einops version: 0.8.0\n",
      "transformers version: NOT INSTALLED or UNKNOWN VERSION.\n",
      "mlflow version: NOT INSTALLED or UNKNOWN VERSION.\n",
      "pynrrd version: NOT INSTALLED or UNKNOWN VERSION.\n",
      "clearml version: NOT INSTALLED or UNKNOWN VERSION.\n",
      "\n",
      "For details about installing the optional dependencies, please visit:\n",
      "    https://docs.monai.io/en/latest/installation.html#installing-the-recommended-dependencies\n",
      "\n"
     ]
    }
   ],
   "execution_count": 2
  },
  {
   "cell_type": "code",
   "id": "de0ed372",
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-05T12:16:39.260377Z",
     "start_time": "2024-09-05T12:16:39.254900Z"
    }
   },
   "source": [
    "# for reproducibility purposes set a seed\n",
    "set_determinism(42)"
   ],
   "outputs": [],
   "execution_count": 3
  },
  {
   "cell_type": "markdown",
   "id": "ad40db27",
   "metadata": {},
   "source": [
    "### Setup a data directory and download dataset\n",
    "\n",
    "Specify a `MONAI_DATA_DIRECTORY` variable, where the data will be downloaded. If not\n",
    "specified a temporary directory will be used."
   ]
  },
  {
   "cell_type": "code",
   "id": "42fa255d",
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-05T12:16:47.318046Z",
     "start_time": "2024-09-05T12:16:47.315347Z"
    }
   },
   "source": [
    "directory = os.environ.get(\"MONAI_DATA_DIRECTORY\")\n",
    "root_dir = tempfile.mkdtemp() if directory is None else directory"
   ],
   "outputs": [],
   "execution_count": 4
  },
  {
   "cell_type": "markdown",
   "id": "10054720",
   "metadata": {},
   "source": [
    "### Download training data"
   ]
  },
  {
   "cell_type": "code",
   "id": "7db7ac32",
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-05T12:17:44.792926Z",
     "start_time": "2024-09-05T12:16:58.485130Z"
    }
   },
   "source": [
    "train_transforms = transforms.Compose(\n",
    "    [\n",
    "        transforms.LoadImaged(keys=[\"image\"]),\n",
    "        transforms.EnsureChannelFirstd(keys=[\"image\"]),\n",
    "        transforms.ScaleIntensityRanged(keys=[\"image\"], a_min=0.0, a_max=255.0, b_min=0.0, b_max=1.0, clip=True),\n",
    "        transforms.RandAffined(\n",
    "            keys=[\"image\"],\n",
    "            rotate_range=[(-np.pi / 36, np.pi / 36), (-np.pi / 36, np.pi / 36)],\n",
    "            translate_range=[(-1, 1), (-1, 1)],\n",
    "            scale_range=[(-0.01, 0.01), (-0.01, 0.01)],\n",
    "            spatial_size=[64, 64],\n",
    "            padding_mode=\"zeros\",\n",
    "            prob=0.5,\n",
    "        ),\n",
    "    ]\n",
    ")\n",
    "train_data = MedNISTDataset(root_dir=root_dir, section=\"training\", download=True, seed=0, transform=train_transforms)\n",
    "train_loader = DataLoader(train_data, batch_size=256, shuffle=True, num_workers=4, persistent_workers=True)"
   ],
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "MedNIST.tar.gz: 59.0MB [00:01, 38.9MB/s]                              "
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "2024-09-05 13:17:00,109 - INFO - Downloaded: /tmp/tmpm033ajbq/MedNIST.tar.gz\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "2024-09-05 13:17:00,195 - INFO - Verified 'MedNIST.tar.gz', md5: 0bc7306e7427e00ad1c5526a6677552d.\n",
      "2024-09-05 13:17:00,195 - INFO - Writing into directory: /tmp/tmpm033ajbq.\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Loading dataset: 100%|██████████| 47164/47164 [00:38<00:00, 1234.15it/s]\n"
     ]
    }
   ],
   "execution_count": 5
  },
  {
   "cell_type": "markdown",
   "id": "ec356258",
   "metadata": {},
   "source": [
    "### Visualise some examples from the dataset"
   ]
  },
  {
   "cell_type": "code",
   "id": "33d7c3dc",
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-05T12:17:49.807217Z",
     "start_time": "2024-09-05T12:17:48.664158Z"
    }
   },
   "source": [
    "# Plot 3 examples from the training set\n",
    "check_data = first(train_loader)\n",
    "fig, ax = plt.subplots(nrows=1, ncols=3)\n",
    "for image_n in range(3):\n",
    "    ax[image_n].imshow(check_data[\"image\"][image_n, 0, :, :], cmap=\"gray\")\n",
    "    ax[image_n].axis(\"off\")"
   ],
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<Figure size 640x480 with 3 Axes>"
      ],
      "image/png": "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"
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "execution_count": 6
  },
  {
   "cell_type": "markdown",
   "id": "d860d83a",
   "metadata": {},
   "source": [
    "### Download Validation Data"
   ]
  },
  {
   "cell_type": "code",
   "id": "ec954b77",
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-05T12:17:56.473462Z",
     "start_time": "2024-09-05T12:17:51.622258Z"
    }
   },
   "source": [
    "val_transforms = transforms.Compose(\n",
    "    [\n",
    "        transforms.LoadImaged(keys=[\"image\"]),\n",
    "        transforms.EnsureChannelFirstd(keys=[\"image\"]),\n",
    "        transforms.ScaleIntensityRanged(keys=[\"image\"], a_min=0.0, a_max=255.0, b_min=0.0, b_max=1.0, clip=True),\n",
    "    ]\n",
    ")\n",
    "val_data = MedNISTDataset(root_dir=root_dir, section=\"validation\", download=True, seed=0, transform=val_transforms)\n",
    "val_loader = DataLoader(val_data, batch_size=256, shuffle=False, num_workers=4, persistent_workers=True)"
   ],
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "2024-09-05 13:17:51,720 - INFO - Verified 'MedNIST.tar.gz', md5: 0bc7306e7427e00ad1c5526a6677552d.\n",
      "2024-09-05 13:17:51,721 - INFO - File exists: /tmp/tmpm033ajbq/MedNIST.tar.gz, skipped downloading.\n",
      "2024-09-05 13:17:51,722 - INFO - Non-empty folder exists in /tmp/tmpm033ajbq/MedNIST, skipped extracting.\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Loading dataset: 100%|██████████| 5895/5895 [00:04<00:00, 1271.42it/s]\n"
     ]
    }
   ],
   "execution_count": 7
  },
  {
   "cell_type": "markdown",
   "id": "09da3d54",
   "metadata": {},
   "source": [
    "## Vector Quantized Variational Autoencoder\n",
    "\n",
    "The first step is to train a Vector Quantized Variation Autoencoder (VQ-VAE). This network is responsible for creating a compressed version of the inputted data. Once its training is done, we can use the encoder to obtain smaller and discrete representations of the 2D images to generate the inputs required for our autoregressive transformer.\n",
    "\n",
    "For its training, we will use the L1 loss, and we will update its codebook using a method based on Exponential Moving Average (EMA)."
   ]
  },
  {
   "cell_type": "markdown",
   "id": "2c7a91c3",
   "metadata": {},
   "source": [
    "### Define network, optimizer and losses"
   ]
  },
  {
   "cell_type": "code",
   "id": "757d00ff",
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-05T12:18:02.529561Z",
     "start_time": "2024-09-05T12:18:02.076934Z"
    }
   },
   "source": [
    "device = torch.device(\"cuda\" if torch.cuda.is_available() else \"cpu\")\n",
    "print(f\"Using {device}\")\n",
    "\n",
    "vqvae_model = VQVAE(\n",
    "    spatial_dims=2,\n",
    "    in_channels=1,\n",
    "    out_channels=1,\n",
    "    num_res_layers=2,\n",
    "    downsample_parameters=((2, 4, 1, 1), (2, 4, 1, 1)),\n",
    "    upsample_parameters=((2, 4, 1, 1, 0), (2, 4, 1, 1, 0)),\n",
    "    channels=(256, 256),\n",
    "    num_res_channels=(256, 256),\n",
    "    num_embeddings=16,\n",
    "    embedding_dim=64,\n",
    ")\n",
    "vqvae_model.to(device)"
   ],
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Using cuda\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "VQVAE(\n",
       "  (encoder): Encoder(\n",
       "    (blocks): ModuleList(\n",
       "      (0): Convolution(\n",
       "        (conv): Conv2d(1, 256, kernel_size=(4, 4), stride=(2, 2), padding=(1, 1))\n",
       "        (adn): ADN(\n",
       "          (A): ReLU()\n",
       "        )\n",
       "      )\n",
       "      (1-2): 2 x VQVAEResidualUnit(\n",
       "        (conv1): Convolution(\n",
       "          (conv): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))\n",
       "          (adn): ADN(\n",
       "            (D): Dropout(p=0.0, inplace=False)\n",
       "            (A): ReLU()\n",
       "          )\n",
       "        )\n",
       "        (conv2): Convolution(\n",
       "          (conv): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))\n",
       "        )\n",
       "      )\n",
       "      (3): Convolution(\n",
       "        (conv): Conv2d(256, 256, kernel_size=(4, 4), stride=(2, 2), padding=(1, 1))\n",
       "        (adn): ADN(\n",
       "          (D): Dropout(p=0.0, inplace=False)\n",
       "          (A): ReLU()\n",
       "        )\n",
       "      )\n",
       "      (4-5): 2 x VQVAEResidualUnit(\n",
       "        (conv1): Convolution(\n",
       "          (conv): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))\n",
       "          (adn): ADN(\n",
       "            (D): Dropout(p=0.0, inplace=False)\n",
       "            (A): ReLU()\n",
       "          )\n",
       "        )\n",
       "        (conv2): Convolution(\n",
       "          (conv): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))\n",
       "        )\n",
       "      )\n",
       "      (6): Convolution(\n",
       "        (conv): Conv2d(256, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))\n",
       "      )\n",
       "    )\n",
       "  )\n",
       "  (decoder): Decoder(\n",
       "    (blocks): ModuleList(\n",
       "      (0): Convolution(\n",
       "        (conv): Conv2d(64, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))\n",
       "      )\n",
       "      (1-2): 2 x VQVAEResidualUnit(\n",
       "        (conv1): Convolution(\n",
       "          (conv): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))\n",
       "          (adn): ADN(\n",
       "            (D): Dropout(p=0.0, inplace=False)\n",
       "            (A): ReLU()\n",
       "          )\n",
       "        )\n",
       "        (conv2): Convolution(\n",
       "          (conv): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))\n",
       "        )\n",
       "      )\n",
       "      (3): Convolution(\n",
       "        (conv): ConvTranspose2d(256, 256, kernel_size=(4, 4), stride=(2, 2), padding=(1, 1))\n",
       "        (adn): ADN(\n",
       "          (D): Dropout(p=0.0, inplace=False)\n",
       "          (A): ReLU()\n",
       "        )\n",
       "      )\n",
       "      (4-5): 2 x VQVAEResidualUnit(\n",
       "        (conv1): Convolution(\n",
       "          (conv): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))\n",
       "          (adn): ADN(\n",
       "            (D): Dropout(p=0.0, inplace=False)\n",
       "            (A): ReLU()\n",
       "          )\n",
       "        )\n",
       "        (conv2): Convolution(\n",
       "          (conv): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))\n",
       "        )\n",
       "      )\n",
       "      (6): Convolution(\n",
       "        (conv): ConvTranspose2d(256, 1, kernel_size=(4, 4), stride=(2, 2), padding=(1, 1))\n",
       "      )\n",
       "    )\n",
       "  )\n",
       "  (quantizer): VectorQuantizer(\n",
       "    (quantizer): EMAQuantizer(\n",
       "      (embedding): Embedding(16, 64)\n",
       "    )\n",
       "  )\n",
       ")"
      ]
     },
     "execution_count": 8,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 8
  },
  {
   "cell_type": "code",
   "id": "7611f596",
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-05T12:18:12.428462Z",
     "start_time": "2024-09-05T12:18:12.423122Z"
    }
   },
   "source": [
    "optimizer = torch.optim.Adam(params=vqvae_model.parameters(), lr=5e-4)\n",
    "l1_loss = L1Loss()"
   ],
   "outputs": [],
   "execution_count": 9
  },
  {
   "cell_type": "markdown",
   "id": "f1d81a89",
   "metadata": {},
   "source": [
    "### VQ-VAE Model training\n",
    "We will train our VQ-VAE for 20 epochs."
   ]
  },
  {
   "cell_type": "code",
   "id": "fe7459e4",
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-05T12:45:05.738377Z",
     "start_time": "2024-09-05T12:18:14.040537Z"
    }
   },
   "source": [
    "max_epochs = 20\n",
    "val_interval = 5\n",
    "epoch_losses = []\n",
    "val_epoch_losses = []\n",
    "\n",
    "total_start = time.time()\n",
    "for epoch in range(max_epochs):\n",
    "    vqvae_model.train()\n",
    "    epoch_loss = 0\n",
    "    progress_bar = tqdm(enumerate(train_loader), total=len(train_loader), ncols=110)\n",
    "    progress_bar.set_description(f\"Epoch {epoch}\")\n",
    "    for step, batch in progress_bar:\n",
    "        images = batch[\"image\"].to(device)\n",
    "        optimizer.zero_grad(set_to_none=True)\n",
    "\n",
    "        # model outputs reconstruction and the quantization error\n",
    "        reconstruction, quantization_loss = vqvae_model(images=images)\n",
    "        recons_loss = l1_loss(reconstruction.float(), images.float())\n",
    "        loss = recons_loss + quantization_loss\n",
    "\n",
    "        loss.backward()\n",
    "        optimizer.step()\n",
    "\n",
    "        epoch_loss += recons_loss.item()\n",
    "\n",
    "        progress_bar.set_postfix(\n",
    "            {\"recons_loss\": epoch_loss / (step + 1), \"quantization_loss\": quantization_loss.item() / (step + 1)}\n",
    "        )\n",
    "    epoch_losses.append(epoch_loss / (step + 1))\n",
    "\n",
    "    if (epoch + 1) % val_interval == 0:\n",
    "        vqvae_model.eval()\n",
    "        val_loss = 0\n",
    "        len_val_loader = len(val_loader)\n",
    "        with torch.no_grad():\n",
    "            for batch in val_loader:\n",
    "                images = batch[\"image\"].to(device)\n",
    "                reconstruction, quantization_loss = vqvae_model(images=images)\n",
    "                recons_loss = l1_loss(reconstruction.float(), images.float())\n",
    "                val_loss += recons_loss.item()\n",
    "\n",
    "        val_loss /= len_val_loader\n",
    "        val_epoch_losses.append(val_loss)\n",
    "\n",
    "total_time = time.time() - total_start\n",
    "print(f\"train completed, total time: {total_time}.\")"
   ],
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Epoch 0:   0%|                                                                        | 0/185 [00:00<?, ?it/s]\n",
      "Epoch 0: 100%|████████████████| 185/185 [01:18<00:00,  2.36it/s, recons_loss=0.152, quantization_loss=1.31e-5]\n",
      "Epoch 1: 100%|███████████████| 185/185 [01:18<00:00,  2.36it/s, recons_loss=0.0363, quantization_loss=1.39e-5]\n",
      "Epoch 2: 100%|███████████████| 185/185 [01:19<00:00,  2.34it/s, recons_loss=0.0289, quantization_loss=1.64e-5]\n",
      "...\n",
      "Epoch 17: 100%|███████████████| 185/185 [01:20<00:00,  2.30it/s, recons_loss=0.022, quantization_loss=3.21e-5]\n",
      "Epoch 18: 100%|██████████████| 185/185 [01:20<00:00,  2.29it/s, recons_loss=0.0223, quantization_loss=3.11e-5]\n",
      "Epoch 19: 100%|██████████████| 185/185 [01:20<00:00,  2.30it/s, recons_loss=0.0222, quantization_loss=2.84e-5]\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "train completed, total time: 1611.6898772716522.\n"
     ]
    }
   ],
   "execution_count": 10
  },
  {
   "cell_type": "markdown",
   "id": "8dfa3270",
   "metadata": {},
   "source": [
    "### Plot reconstructions of final trained vqvae model"
   ]
  },
  {
   "cell_type": "code",
   "id": "0789cfcc",
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-05T16:49:07.719360Z",
     "start_time": "2024-09-05T16:49:07.255032Z"
    }
   },
   "source": [
    "images = first(val_loader)[\"image\"].to(device)\n",
    "reconstruction, quantization_loss = vqvae_model(images=images)\n",
    "nrows = 4\n",
    "fig, ax = plt.subplots(nrows=4, ncols=2, figsize=(3, 4))\n",
    "for i in range(nrows):\n",
    "    ax.flat[i * 2].imshow(images[i + 20, 0].detach().cpu(), vmin=0, vmax=1, cmap=\"gray\")\n",
    "    ax.flat[i * 2].axis(\"off\")\n",
    "    ax.flat[i * 2 + 1].imshow(reconstruction[i + 20, 0].detach().cpu(), vmin=0, vmax=1, cmap=\"gray\")\n",
    "    ax.flat[i * 2 + 1].axis(\"off\")\n",
    "ax.flat[0].title.set_text(\"Image\")\n",
    "ax.flat[1].title.set_text(\"Reconstruction\")\n",
    "plt.show()"
   ],
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<Figure size 300x400 with 8 Axes>"
      ],
      "image/png": "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"
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "execution_count": 11
  },
  {
   "cell_type": "markdown",
   "id": "773f5f43",
   "metadata": {},
   "source": [
    "# Autoregressive Transformer\n",
    "\n",
    "Now that our VQ-VAE model has been trained, we can use this model to encode the data into its discrete latent representations. Then, to be able to input it into the autoregressive Transformer, it is necessary to transform this 2D latent representation into a 1D sequence.\n",
    "\n",
    "In order to train it in an autoregressive manner, we will use the CrossEntropy Loss as the Transformer will try to predict the next token value for each position of the sequence.\n",
    "\n",
    "Here we will use the MONAI's `VQVAETransformerInferer` class to help with the forward pass and to get the predicted likelihood from the VQ-VAE + Transformer models."
   ]
  },
  {
   "cell_type": "markdown",
   "id": "83352d19",
   "metadata": {},
   "source": [
    "### Datasets\n",
    "To train the transformer, we only use the `HeadCT` class."
   ]
  },
  {
   "cell_type": "code",
   "id": "2b3c3a82",
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-06T13:22:38.382436Z",
     "start_time": "2024-09-06T13:22:07.829759Z"
    }
   },
   "source": [
    "in_distribution_class = \"HeadCT\"\n",
    "\n",
    "train_data = MedNISTDataset(root_dir=root_dir, section=\"training\", seed=0)\n",
    "train_datalist = [{\"image\": item[\"image\"]} for item in train_data.data if item[\"class_name\"] == in_distribution_class]\n",
    "train_transforms = transforms.Compose(\n",
    "    [\n",
    "        transforms.LoadImaged(keys=[\"image\"]),\n",
    "        transforms.EnsureChannelFirstd(keys=[\"image\"]),\n",
    "        transforms.ScaleIntensityRanged(keys=[\"image\"], a_min=0.0, a_max=255.0, b_min=0.0, b_max=1.0, clip=True),\n",
    "        transforms.RandAffined(\n",
    "            keys=[\"image\"],\n",
    "            rotate_range=[(-np.pi / 36, np.pi / 36), (-np.pi / 36, np.pi / 36)],\n",
    "            translate_range=[(-1, 1), (-1, 1)],\n",
    "            scale_range=[(-0.01, 0.01), (-0.01, 0.01)],\n",
    "            spatial_size=[64, 64],\n",
    "            padding_mode=\"zeros\",\n",
    "            prob=0.5,\n",
    "        ),\n",
    "    ]\n",
    ")\n",
    "train_ds = Dataset(data=train_datalist, transform=train_transforms)\n",
    "train_loader = DataLoader(train_ds, batch_size=32, shuffle=True, num_workers=4, persistent_workers=True)\n",
    "\n",
    "val_data = MedNISTDataset(root_dir=root_dir, section=\"validation\", seed=0)\n",
    "val_datalist = [{\"image\": item[\"image\"]} for item in val_data.data if item[\"class_name\"] == in_distribution_class]\n",
    "val_transforms = transforms.Compose(\n",
    "    [\n",
    "        transforms.LoadImaged(keys=[\"image\"]),\n",
    "        transforms.EnsureChannelFirstd(keys=[\"image\"]),\n",
    "        transforms.ScaleIntensityRanged(keys=[\"image\"], a_min=0.0, a_max=255.0, b_min=0.0, b_max=1.0, clip=True),\n",
    "    ]\n",
    ")\n",
    "val_ds = Dataset(data=val_datalist, transform=val_transforms)\n",
    "val_loader = DataLoader(val_ds, batch_size=32, shuffle=False, num_workers=4, persistent_workers=True)"
   ],
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Loading dataset: 100%|██████████| 47164/47164 [00:25<00:00, 1816.55it/s]\n",
      "Loading dataset: 100%|██████████| 5895/5895 [00:03<00:00, 1723.99it/s]\n"
     ]
    }
   ],
   "execution_count": 25
  },
  {
   "cell_type": "markdown",
   "id": "b0f5a3cd",
   "metadata": {},
   "source": [
    "### 2D latent representation -> 1D sequence\n",
    "We need to define an ordering of which we convert our 2D latent space into a 1D sequence. For this we will use a simple raster scan."
   ]
  },
  {
   "cell_type": "code",
   "id": "f91086e3",
   "metadata": {
    "lines_to_next_cell": 2,
    "ExecuteTime": {
     "end_time": "2024-09-06T13:22:39.919047Z",
     "start_time": "2024-09-06T13:22:38.383832Z"
    }
   },
   "source": [
    "# Get spatial dimensions of data\n",
    "test_data = next(iter(train_loader))[\"image\"].to(device)\n",
    "spatial_shape = vqvae_model.encode_stage_2_inputs(test_data).shape[2:]\n",
    "\n",
    "ordering = Ordering(ordering_type=OrderingType.RASTER_SCAN.value, spatial_dims=2, dimensions=(1,) + spatial_shape)"
   ],
   "outputs": [],
   "execution_count": 26
  },
  {
   "cell_type": "markdown",
   "id": "ace09890",
   "metadata": {},
   "source": [
    "### Define network, inferer, optimizer and loss function"
   ]
  },
  {
   "cell_type": "code",
   "id": "aab1891a",
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-05T16:49:46.366884Z",
     "start_time": "2024-09-05T16:49:46.277638Z"
    }
   },
   "source": [
    "device = torch.device(\"cuda\" if torch.cuda.is_available() else \"cpu\")\n",
    "\n",
    "transformer_model = DecoderOnlyTransformer(\n",
    "    num_tokens=16 + 1,\n",
    "    max_seq_len=spatial_shape[0] * spatial_shape[1],\n",
    "    attn_layers_dim=128,\n",
    "    attn_layers_depth=16,\n",
    "    attn_layers_heads=16,\n",
    ")\n",
    "transformer_model.to(device)\n",
    "\n",
    "inferer = VQVAETransformerInferer()"
   ],
   "outputs": [],
   "execution_count": 14
  },
  {
   "cell_type": "code",
   "id": "fa3cd231",
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-06T13:22:39.930917Z",
     "start_time": "2024-09-06T13:22:39.921117Z"
    }
   },
   "source": [
    "optimizer = torch.optim.Adam(params=transformer_model.parameters(), lr=1e-4)\n",
    "ce_loss = CrossEntropyLoss()"
   ],
   "outputs": [],
   "execution_count": 27
  },
  {
   "cell_type": "markdown",
   "id": "0921fcfb",
   "metadata": {},
   "source": [
    "### Transformer Training\n",
    "We will train the Transformer for 20 epochs."
   ]
  },
  {
   "cell_type": "code",
   "id": "9c32f0a9",
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-05T17:00:32.349820Z",
     "start_time": "2024-09-05T16:49:50.711804Z"
    }
   },
   "source": [
    "max_epochs = 20\n",
    "val_interval = 5\n",
    "epoch_losses = []\n",
    "val_epoch_losses = []\n",
    "vqvae_model.eval()\n",
    "\n",
    "total_start = time.time()\n",
    "for epoch in range(max_epochs):\n",
    "    transformer_model.train()\n",
    "    epoch_loss = 0\n",
    "    progress_bar = tqdm(enumerate(train_loader), total=len(train_loader), ncols=110)\n",
    "    progress_bar.set_description(f\"Epoch {epoch}\")\n",
    "    for step, batch in progress_bar:\n",
    "\n",
    "        images = batch[\"image\"].to(device)\n",
    "\n",
    "        optimizer.zero_grad(set_to_none=True)\n",
    "\n",
    "        logits, target, _ = inferer(images, vqvae_model, transformer_model, ordering, return_latent=True)\n",
    "        logits = logits.transpose(1, 2)\n",
    "\n",
    "        loss = ce_loss(logits, target)\n",
    "\n",
    "        loss.backward()\n",
    "        optimizer.step()\n",
    "\n",
    "        epoch_loss += loss.item()\n",
    "\n",
    "        progress_bar.set_postfix({\"ce_loss\": epoch_loss / (step + 1)})\n",
    "    epoch_losses.append(epoch_loss / (step + 1))\n",
    "\n",
    "    if (epoch + 1) % val_interval == 0:\n",
    "        transformer_model.eval()\n",
    "        val_loss = 0\n",
    "        len_val_loader = len(val_loader)\n",
    "        with torch.no_grad():\n",
    "            for batch in val_loader:\n",
    "\n",
    "                images = batch[\"image\"].to(device)\n",
    "\n",
    "                logits, quantizations_target, _ = inferer(\n",
    "                    images, vqvae_model, transformer_model, ordering, return_latent=True\n",
    "                )\n",
    "                logits = logits.transpose(1, 2)\n",
    "\n",
    "                loss = ce_loss(logits[:, :, :-1], quantizations_target[:, 1:])\n",
    "\n",
    "                val_loss += loss.item()\n",
    "        # get sample\n",
    "        sample = inferer.sample(\n",
    "            vqvae_model=vqvae_model,\n",
    "            transformer_model=transformer_model,\n",
    "            ordering=ordering,\n",
    "            latent_spatial_dim=(spatial_shape[0], spatial_shape[1]),\n",
    "            starting_tokens=vqvae_model.num_embeddings * torch.ones((1, 1), device=device),\n",
    "        )\n",
    "        plt.imshow(sample[0, 0, ...].cpu().detach())\n",
    "        plt.title(f\"Sample epoch {epoch}\")\n",
    "        plt.show()\n",
    "        val_loss /= len_val_loader\n",
    "        val_epoch_losses.append(val_loss)\n",
    "\n",
    "total_time = time.time() - total_start\n",
    "print(f\"train completed, total time: {total_time}.\")"
   ],
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Epoch 0: 100%|████████████████████████████████████████████████| 250/250 [00:31<00:00,  8.04it/s, ce_loss=1.71]\n",
      "Epoch 1: 100%|████████████████████████████████████████████████| 250/250 [00:30<00:00,  8.17it/s, ce_loss=1.49]\n",
      "Epoch 2: 100%|████████████████████████████████████████████████| 250/250 [00:30<00:00,  8.18it/s, ce_loss=1.41]\n",
      "Epoch 3: 100%|████████████████████████████████████████████████| 250/250 [00:30<00:00,  8.08it/s, ce_loss=1.36]\n",
      "Epoch 4: 100%|█████████████████████████████████████████████████| 250/250 [00:31<00:00,  7.92it/s, ce_loss=1.3]\n",
      "100%|██████████| 256/256 [00:03<00:00, 71.68it/s]\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ],
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAaAAAAGzCAYAAABpdMNsAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8hTgPZAAAACXBIWXMAAA9hAAAPYQGoP6dpAABhdUlEQVR4nO2deXwV1fn/PzN3S+5NCFsQArLLGsJiFQipfKW2LpX2i7hRhdYv1Wq1WqsWwd+rFItArfbrWtuirUpVpFJtUdRqXap+UVBAFpHSIjuyhCW5S+4yM78/7mKSeQ5k4IYJ8fPmxWtunnvumXNmOc+cmc88j2ZZlgVCCCHkBKO73QBCCCFfTuiACCGEuAIdECGEEFegAyKEEOIKdECEEEJcgQ6IEEKIK9ABEUIIcQU6IEIIIa5AB0QIIcQV6IAIcUD//v3x4IMPut2ME0b//v1x5513ut0M0krxut0A8uVj48aNePjhh7F27Vrs378fbdu2Rd++fTFu3DhMnjzZ7eaRZuLDDz/EFVdcAQBYtmwZ2rdv73KLiNvQAZETysqVKzFlyhSUlZXhkksuQWlpKXbv3o2PP/4YTz75JB1QK8U0TcyePRvBYBDRaNTt5pAWAh0QOaH89re/RXFxMZ577jm0adOmwXfV1dUutYo0N88++yx2796Niy++GE8++aTbzSEtBD4DIieUbdu2oW/fvjbnAwAdOnRo8PfixYsxZcoUjB49GuXl5bjgggvw9NNP2343btw4/OAHP8AHH3yAiy66CBUVFRg/fjw++OADAMDf//53jB8/HkOGDMFFF12ETz75pMHvb7/9dgwfPhzbt2/H1KlTMWzYMFRVVeGhhx5CU4LF79mzB9OnT0dlZSXKy8vxzW9+E88991yTt8lf//rXXLvPPPNM3Hzzzdi9e3eDMpMnT8aFF16IdevW4fLLL0dFRQXGjRuHZ555xlZfdXU1ZsyYgcrKSgwZMgTf+ta38Pzzz9vKmaaJJ554IrdtRo0ahalTp2Lt2rW2sq+//jouvPDCXP/++c9/Nrl/hw4dwn333Ycbb7xR3O/kywsdEDmhdO3aFevXr8e//vWvo5Z95pln0LVrV/zgBz/A7bffji5dumDWrFl46qmnbGW3bt2KW265BePGjcNPfvITHD58GNdeey3+9re/Ye7cuRg/fjx+9KMfYdu2bfjxj38M0zQb/N4wDHz/+99Hhw4dcNttt6G8vBwPPvggHnjggSO2cf/+/bj00kuxbNkyXHHFFbjjjjvQvXt33HHHHXj88ceP2sdHHnkE06ZNQ48ePXD77bdjypQpubpqamoalD18+DCuueYaDB48GLfddhs6d+6Mn//85w2cXV1dHSZPnoy//e1vGD9+PH7605+iuLgYt99+O5544okG9d1xxx2YM2cOOnfujFtvvRXXXHMNAoEAPv744wblPvroI/z85z/HBRdcgNtuuw3xeBw33ngjDh48eNT+AcD999+P0tJSXH755U0qT75EWIScQN59911r4MCB1sCBA63LLrvMuvvuu6133nnHSiQStrKxWMxm+5//+R/ra1/7WgPb2WefbfXr189auXJlzvbOO+9Y/fr1syoqKqydO3fm7AsXLrT69etnvf/++znbtGnTrH79+lm/+MUvcjbTNK1rrrnGGjx4sFVdXZ2z9+vXz3rggQdyf8+YMcMaM2aMdeDAgQZtuvnmm63TTz9d7EOWHTt2WAMHDrQeeeSRBvaNGzdagwYNamC/8sorrX79+ll/+MMfcrZ4PG59+9vftkaPHp3bfo8//rjVr18/669//WuuXCKRsC677DJr2LBhVm1trWVZlrVs2TJbn+v3vX5/Bw8ebG3dujVn27Bhg9WvXz9rwYIFyr7VLztw4EDrnXfesSzLsh544AGrX79+DbYp+fLCGRA5oYwZMwYLFy7EuHHj8Omnn+LRRx/F1KlTcdZZZ+Ef//hHg7IFBQW5z7W1tThw4ADOPPNMbN++HbW1tQ3K9u3bF8OHD8/9PXToUADAqFGjUFZWZrNv377d1rasQgsANE3DFVdcgWQyiWXLlol9sSwLf//73zFu3DhYloUDBw7k/ldVVaG2thbr169XbovXXnsNpmni/PPPb/Dbjh07okePHrlbiFm8Xi8uu+yy3N9+vx+XXXYZqqurc+v55z//idLSUlx44YW5cj6fD5MnT0Y0GsWKFSsApG9LapqGG264wdYuTdMa/F1ZWYnu3bvn/h4wYACKiorEbdiYu+66C2eddRaqqqqOWpZ8+aAIgZxwKioq8NBDDyGRSODTTz/F66+/jscffxw33XQTXnjhBfTt2xdA+tbPgw8+iNWrVyMWizWoo7a2FsXFxbm/u3Tp0uD77HedO3duYC8qKgIA2+0tXddx6qmnNrD1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"
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Epoch 5: 100%|████████████████████████████████████████████████| 250/250 [00:30<00:00,  8.08it/s, ce_loss=1.26]\n",
      "Epoch 6: 100%|████████████████████████████████████████████████| 250/250 [00:31<00:00,  8.06it/s, ce_loss=1.22]\n",
      "Epoch 7: 100%|████████████████████████████████████████████████| 250/250 [00:31<00:00,  8.02it/s, ce_loss=1.19]\n",
      "Epoch 8: 100%|████████████████████████████████████████████████| 250/250 [00:31<00:00,  8.06it/s, ce_loss=1.16]\n",
      "Epoch 9: 100%|████████████████████████████████████████████████| 250/250 [00:31<00:00,  8.03it/s, ce_loss=1.15]\n",
      "100%|██████████| 256/256 [00:03<00:00, 77.30it/s]\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ],
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAaAAAAGzCAYAAABpdMNsAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8hTgPZAAAACXBIWXMAAA9hAAAPYQGoP6dpAABgSElEQVR4nO29eXwV1f3//7pzt6yELRQBAUFZNGxai8RUvlA/bpX2oyiKCtXy0VrFXYtifyKIgFata22LWhUXpFptcZe6VCuKigtBi1pkV4GwJHfJ3WZ+f9zFJPN+QwZumCS+njx4TPK+J2fOmXNm3nNmXvf99liWZYEQQgjZxxhuN4AQQsj3EzogQgghrkAHRAghxBXogAghhLgCHRAhhBBXoAMihBDiCnRAhBBCXIEOiBBCiCvQARFCCHEFOiBCHDBw4EDcddddbjdjnzFw4EDMmjXL7WaQdorP7QaQ7x+rVq3CPffcgxUrVmDr1q3o2LEjDjzwQIwdOxaTJk1yu3kkj2zduhW33norXn/9dYTDYfTv3x/nnXcejj/+eLebRloBdEBkn7J8+XJMnjwZPXr0wKmnnory8nJ8/fXX+Pjjj/Hwww/TAbUjQqEQzjjjDGzduhWTJ09GeXk5XnjhBVx66aVIJpMYN26c200kLkMHRPYpf/zjH1FaWoonn3wSHTp0aPRZTU2NS60iLcHChQuxdu1aPPjggxg1ahQAYOLEiZgwYQJuuukmHHvssQgEAi63krgJ3wGRfcq6detw4IEH2pwPAHTp0qXR70899RQmT56MUaNGoaKiAieccAIee+wx29+NHTsWv/rVr/Duu+/i5JNPxtChQzFu3Di8++67AICXX34Z48aNw5AhQ3DyySfj008/bfT3V199NUaMGIH169djypQpGD58OKqqqnD33XejOcHiv/32W1xzzTWorKxERUUFfvrTn+LJJ59s9jH5+9//nmv3j370I1x22WX4+uuvG5WZNGkSTjzxRFRXV+P000/H0KFDMXbsWDz++OO2+mpqajB9+nRUVlZiyJAh+NnPfoann37aVs40TTz00EO5Y3PEEUdgypQpWLFiha3skiVLcOKJJ+b6969//Wu3/Xr//ffRuXPnnPMBAMMwcPzxx2PLli147733mnN4SDuGDojsU3r27ImVK1fi888/323Zxx9/HD179sSvfvUrXH311dhvv/0wc+ZMPProo7aya9euxRVXXIGxY8fi8ssvx86dO3H++efjH//4B+bOnYtx48bhoosuwrp163DppZfCNM1Gf59KpfB///d/6NKlC6666ipUVFTgrrvuwp133rnLNm7duhUTJkzA0qVLceaZZ+Laa69F7969ce211+LBBx/cbR/vvfdeTJs2DX369MHVV1+NyZMn5+qqra1tVHbnzp0477zzcMghh+Cqq65C9+7dcf311zdydvX19Zg0aRL+8Y9/YNy4cfjNb36D0tJSXH311XjooYca1Xfttddizpw56N69O6688kqcd955CAaD+PjjjxuV++CDD3D99dfjhBNOwFVXXYVYLIaLL74Y27dv32XfEokECgoKbPasbeXKlbs9PqSdYxGyD3nrrbeswYMHW4MHD7ZOO+006+abb7befPNNKx6P28pGo1Gb7Ze//KX1k5/8pJFtzJgx1oABA6zly5fnbG+++aY1YMAAa+jQodbGjRtz9oULF1oDBgyw3nnnnZxt2rRp1oABA6wbbrghZzNN0zrvvPOsQw45xKqpqcnZBwwYYN15552536dPn24deeSR1rZt2xq16bLLLrMOO+wwsQ9ZNmzYYA0ePNi69957G9lXrVplHXzwwY3sZ511ljVgwADrgQceyNlisZj185//3Bo1alTu+D344IPWgAEDrL///e+5cvF43DrttNOs4cOHW3V1dZZlWdbSpUttfW7Y94b9PeSQQ6y1a9fmbJ999pk1YMAAa8GCBWrfLMuybrjhBmvQoEHWhg0bbMdmwIAB1qxZs3b596T9wxUQ2acceeSRWLhwIcaOHYv//Oc/uO+++zBlyhQcddRR+Oc//9mobMO757q6Omzbtg0/+tGPsH79etTV1TUqe+CBB2LEiBG534cNGwYAOOKII9CjRw+bff369ba2nXnmmbmfPR4PzjzzTCQSCSxdulTsi2VZePnllzF27FhYloVt27bl/ldVVaGurm6Xd/mvvPIKTNPE8ccf3+hvu3btij59+uQeIWbx+Xw47bTTcr8HAgGcdtppqKmpye3nX//6F8rLy3HiiSfmyvn9fkyaNAmRSCT32Ovll1+Gx+PB1KlTbe3yeDyNfq+srETv3r1zvw8aNAglJSXiMWzIKaecAq/Xi0svvRTLly/HunXr8Kc//QmvvPIKgPRqjXy/oQiB7HOGDh2Ku+++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sqzf/e531sSJE9XP3bgGtcoVUDwex8qVK1FZWZmzGYaByspKfPjhhy62rOXYsGEDtmzZ0qjPpaWlGDZsWJvuc11dHQDk7rKqq6uRSCQa9bN///7o0aMHPvroIzeauNekUik899xziEQiGDFiRLvr46xZszB69OhG/QHa11iuXbsWVVVV+MlPfoIrrrgCmzZtAtC++vjqq6+ioqICF198MUaNGoX//d//xaJFi3Kfu3ENapUJ6bZv345UKoUuXbo0snfp0sX2PqG9sGXLFgAQ+9xWnzebpok5c+bg0EMPxYABAwAAW7duhd/vR4cOHRqV7dKlS+4YtBVWrVqF008/HbFYDEVFRbjnnntw4IEH4rPPPms3fXzuuefw6aef4sknn7R91l7GcujQoZg7dy4OOOAAbNmyBffccw/OPPNMLF68uN30EQDWr1+Pxx9/HOeccw7OP/98rFixArNnz4bf78dJJ53kyjWoVTog0j6YOXMmvvjii0bP09sTBxxwAJ555hnU1dXhpZdewrRp0/DII4+43ay88fXXX+PGG2/EAw88gGAw6HZzWozRo0fnfh40aBCGDRuGMWPG4IUXXkBBQYGLLcsvlmWhoqICl19+OQDg4IMPxhdffIGFCxfipJNOcqVNrfIRXKdOneD1em2Cg5qaGnTt2tWlVrUs5eXlANBu+jxr1iy8/vrreOihh9C9e/ecvWvXrkgkEqitrW1UvqamJncM2gqBQAB9+vRBRUUFrrjiCgwaNAgPP/xwu+njypUrUVNTg5NPPhkHH3wwDj74YCxbtgwLFizAwQcf3G762ZQOHTqgb9++WLduXbvqY3l5Ofr379/I1q9fv9zjRjeuQa3SAQUCARxyyCFYunRpzmaaJpYuXYoRI0a42LKWo1evXigvL2/U51AohI8//rhN9dmyLMyaNQuvvPIKHnroIey///6NPq+oqIDf72/Uz9WrV2PTpk0YPnz4Pm5tfjFNE/F4vN308YgjjsDixYvxzDPP5P5XVFRg3LhxuZ/bQz+bEg6HsX79epSXl7erPh566KH46quvGtnWrFmDnj17AnDnGtRqH8Gdc845mDZtGioqKjB06FA89NBDiEajOPnkk91u2h4TDoexbt263O8bNmzAZ599hrKyMvTo0QOTJ0/Gvffeiz59+qBXr16444470K1bNxx99NEuttoZM2fOxLPPPos//OEPKC4uzj1XLi0tRUFBAUpLSzF+/HjMmzcPZWVlKCkpwezZszFixIg2dULfeuutOOqoo7DffvshHA7j2WefxbJly3D//fe3mz6WlJTk3t1lKSoqQseOHXP29tDPm266CWPGjEGPHj2wefNm3HXXXTAMAyeeeGK7GUsA+MUvfoGJEyfij3/8I44//nh88sknWLRoEWbNmgUA8Hg8+/wa5LEsy2qRmvPAI488gvvvvx9btmzB4MGD8dvf/hbDhg1zu1l7zLvvvovJkyfb7CeddBLmzZsHy7Jw5513YtGiRaitrcVhhx2GGTNm4IADDnChtXtG0++JZJk7d27u5iEWi2HevHl47rnnEI/HUVVVhRkzZrSpRxrTp0/HO++8g82bN6O0tBQDBw7EueeeiyOPPBJA++ijxKRJkzBo0CBce+21ANpHPy+77DK899572LFjBzp37ozDDjsMl112GXr37g2gffQxy2uvvYbbbrsNa9asQa9evXDOOedgwoQJuc/39TWoVTsgQggh7ZdW+Q6IEEJI+4cOiBBCiCvQARFCCHEFOiBCCCGuQAdECCHEFeiACCGEuAIdECGEEFegAyKEEOIKdECEEEJcgQ6IEEKIK9ABEUIIcYX/H/wbbVZvXv25AAAAAElFTkSuQmCC"
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Epoch 10: 100%|███████████████████████████████████████████████| 250/250 [00:30<00:00,  8.08it/s, ce_loss=1.13]\n",
      "Epoch 11: 100%|███████████████████████████████████████████████| 250/250 [00:31<00:00,  8.02it/s, ce_loss=1.11]\n",
      "Epoch 12: 100%|████████████████████████████████████████████████| 250/250 [00:31<00:00,  8.06it/s, ce_loss=1.1]\n",
      "Epoch 13: 100%|███████████████████████████████████████████████| 250/250 [00:30<00:00,  8.07it/s, ce_loss=1.09]\n",
      "Epoch 14: 100%|███████████████████████████████████████████████| 250/250 [00:30<00:00,  8.07it/s, ce_loss=1.08]\n",
      "100%|██████████| 256/256 [00:03<00:00, 76.83it/s]\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ],
      "image/png": "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"
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Epoch 15: 100%|███████████████████████████████████████████████| 250/250 [00:30<00:00,  8.07it/s, ce_loss=1.07]\n",
      "Epoch 16: 100%|███████████████████████████████████████████████| 250/250 [00:31<00:00,  8.05it/s, ce_loss=1.06]\n",
      "Epoch 17: 100%|███████████████████████████████████████████████| 250/250 [00:31<00:00,  8.06it/s, ce_loss=1.06]\n",
      "Epoch 18: 100%|███████████████████████████████████████████████| 250/250 [00:31<00:00,  8.05it/s, ce_loss=1.05]\n",
      "Epoch 19: 100%|███████████████████████████████████████████████| 250/250 [00:31<00:00,  8.04it/s, ce_loss=1.04]\n",
      "100%|██████████| 256/256 [00:03<00:00, 81.35it/s]\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ],
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAaAAAAGzCAYAAABpdMNsAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8hTgPZAAAACXBIWXMAAA9hAAAPYQGoP6dpAABjSklEQVR4nO2deXwV5fX/PzN3S3JvEiAJQtgXE5YYQKoIplKp1datX0RUVKiWam1FrVtB/P6kIAK12q+7rWArooJUalsE61JXLIpVkEUELTsohLAk9ya56/z+uAtJ5jyQgZtMEj9vX77m5tzDM88z25ln5nPP0QzDMEAIIYQ0M7rdHSCEEPLthAGIEEKILTAAEUIIsQUGIEIIIbbAAEQIIcQWGIAIIYTYAgMQIYQQW2AAIoQQYgsMQIQQQmyBAYgQBcXFxXj00Uft7kazUVxcjBkzZtjdDfItwml3B0jbZtOmTXj88cexbt067N+/H+3atUPfvn0xatQojB8/3u7ukTTywgsv4MMPP8TatWvx9ddfY/To0ZgzZ47o+8EHH+Cxxx7D559/DrfbjeHDh+PXv/41unbt2sy9JnbCGRBpMj799FOMGTMGX3zxBcaOHYt77rkHY8eOha7rePbZZ+3uHkkz8+bNw0cffYS+ffvC6VTf27799tv42c9+hlAohNtvvx3XXnstVq1ahSuvvBIHDhxoxh4Tu+EMiDQZf/jDH5CdnY2XXnoJOTk59b6rqKiwqVekqViwYAEKCwuhaRqGDBmi9HvggQfQrVs3LFy4EG63GwAwatQojB49Gk899RSmTJnSXF0mNsMZEGkyduzYgb59+5qCDwDk5eXV+3vJkiWYMGEChg8fjpKSEpx//vl44YUXTP9u1KhR+PnPf46PPvoIl1xyCUpLS3HRRRfho48+AgC8/vrruOiii3DKKafgkksuweeff17v30+ZMgVDhgzBzp07MXHiRAwePBhlZWV47LHH0JjE8Hv37sVdd92FESNGoKSkBBdccAFeeumlRm+Tv//976l+n3766bj11lvx9ddf1/MZP348LrzwQqxfvx5XXHEFSktLMWrUKCxcuNDUXkVFBaZOnYoRI0bglFNOwcUXX4yXX37Z5BeLxTB//vzUtjnjjDMwceJErFu3zuT75ptv4sILL0yN77333mvU2Lp06QJN047qc+jQIXz11Vc455xzUsEHAPr164c+ffpg2bJljVoXaRswAJEmo0uXLtiwYQM2b958TN+FCxeiS5cu+PnPf44pU6agc+fOmD59Op5//nmT7/bt23H77bdj1KhRuO2223D48GHccMMN+Mc//oHZs2fjoosuwk033YQdO3bgV7/6FWKxWL1/H41G8bOf/Qx5eXm48847UVJSgkcffRSPPPLIUfu4f/9+XHbZZVi5ciWuuuoq3H333ejevTvuvvtuPPPMM8cc45NPPonJkyejR48emDJlCiZMmJBqq7Kysp7v4cOHcf3112PgwIG488470alTJ/zmN7+pF+xqa2sxfvx4/OMf/8BFF12EX//618jOzsaUKVMwf/78eu3dfffdmDVrFjp16oQ77rgD119/PTweDz777LN6fp988gl+85vf4Pzzz8edd96JYDCIm2++GQcPHjzm+BpDKBQCAGRkZJi+y8jIwL59+1BeXp6WdZFWgEFIE7FixQqjf//+Rv/+/Y3LL7/cuP/++43333/fCIVCJt+amhqT7ac//anx/e9/v57t7LPPNoqKioxPP/00ZXv//feNoqIio7S01Ni9e3fKvmjRIqOoqMj48MMPU7bJkycbRUVFxr333puyxWIx4/rrrzcGDhxoVFRUpOxFRUXGI488kvp76tSpxplnnmkcOHCgXp9uvfVWY+jQoeIYkuzatcvo37+/8eSTT9azb9q0yRgwYEA9+9VXX20UFRUZf/rTn1K2YDBo/PjHPzaGDx+e2n7PPPOMUVRUZPz9739P+YVCIePyyy83Bg8ebFRVVRmGYRgrV640jbnu2OuOd+DAgcb27dtTto0bNxpFRUXGggULlGOTGDx4sDF58mSTPRqNGt/5zneMn/zkJ/XsBw4cMAYPHmwUFRUZ69ats7Qu0nrhDIg0GWeeeSYWLVqEUaNG4YsvvsC8efMwceJEnHXWWfjXv/5Vz7fuHXFVVRUOHDiA008/HTt37kRVVVU93759+9Z7xzBo0CAAwBlnnIHCwkKTfefOnaa+XXXVVanPmqbhqquuQjgcxsqVK8WxGIaB119/HaNGjYJhGDhw4EDq/7KyMlRVVWHDhg3KbfHGG28gFovhRz/6Ub1/m5+fjx49eqQeISZxOp24/PLLU3+73W5cfvnlqKioSK3nvffeQ0FBAS688MKUn8vlwvjx41FdXY2PP/4YQPyxpKZpmDRp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"
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "train completed, total time: 641.6251218318939.\n"
     ]
    }
   ],
   "execution_count": 16
  },
  {
   "cell_type": "markdown",
   "id": "29a35d4b",
   "metadata": {},
   "source": [
    "## Image-wise anomaly detection\n",
    "\n",
    "To verify the performance of the VQ-VAE + Transformer performing unsupervised anomaly detection, we will use the images from the test set of the MedNIST dataset. We will consider images from the `HeadCT` class as in-distribution images."
   ]
  },
  {
   "cell_type": "code",
   "id": "aa3938fe",
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-05T17:07:48.328850Z",
     "start_time": "2024-09-05T17:07:43.028703Z"
    }
   },
   "source": [
    "vqvae_model.eval()\n",
    "transformer_model.eval()\n",
    "\n",
    "test_data = MedNISTDataset(root_dir=root_dir, section=\"test\", download=True, seed=0)\n",
    "\n",
    "in_distribution_datalist = [\n",
    "    {\"image\": item[\"image\"]} for item in test_data.data if item[\"class_name\"] == in_distribution_class\n",
    "]\n",
    "in_distribution_ds = Dataset(data=in_distribution_datalist, transform=val_transforms)\n",
    "in_distribution_loader = DataLoader(\n",
    "    in_distribution_ds, batch_size=64, shuffle=False, num_workers=4, persistent_workers=True\n",
    ")\n",
    "\n",
    "in_likelihoods = []\n",
    "\n",
    "progress_bar = tqdm(enumerate(in_distribution_loader), total=len(in_distribution_loader), ncols=110)\n",
    "progress_bar.set_description(\"In-distribution data\")\n",
    "for _, batch in progress_bar:\n",
    "    images = batch[\"image\"].to(device)\n",
    "\n",
    "    log_likelihood = inferer.get_likelihood(\n",
    "        inputs=images, vqvae_model=vqvae_model, transformer_model=transformer_model, ordering=ordering\n",
    "    )\n",
    "    in_likelihoods.append(log_likelihood.sum(dim=(1, 2)).cpu().numpy())\n",
    "\n",
    "in_likelihoods = np.concatenate(in_likelihoods)"
   ],
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "2024-09-05 18:07:43,157 - INFO - Verified 'MedNIST.tar.gz', md5: 0bc7306e7427e00ad1c5526a6677552d.\n",
      "2024-09-05 18:07:43,158 - INFO - File exists: /tmp/tmpm033ajbq/MedNIST.tar.gz, skipped downloading.\n",
      "2024-09-05 18:07:43,159 - INFO - Non-empty folder exists in /tmp/tmpm033ajbq/MedNIST, skipped extracting.\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Loading dataset: 100%|██████████| 5895/5895 [00:02<00:00, 2094.16it/s]\n",
      "In-distribution data: 100%|███████████████████████████████████████████████████| 17/17 [00:01<00:00, 10.46it/s]\n"
     ]
    }
   ],
   "execution_count": 17
  },
  {
   "cell_type": "markdown",
   "id": "19541717",
   "metadata": {},
   "source": [
    "We will use all other classes for the out-of-distribution examples."
   ]
  },
  {
   "cell_type": "code",
   "id": "f3e714ee",
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-05T17:08:54.198733Z",
     "start_time": "2024-09-05T17:08:42.912735Z"
    }
   },
   "source": [
    "all_classes = {item[\"class_name\"] for item in test_data.data}\n",
    "all_classes.remove(in_distribution_class)\n",
    "\n",
    "all_likelihoods = {}\n",
    "for c in all_classes:\n",
    "    ood_datalist = [{\"image\": item[\"image\"]} for item in test_data.data if item[\"class_name\"] == c]\n",
    "    ood_ds = Dataset(data=ood_datalist, transform=val_transforms)\n",
    "    ood_loader = DataLoader(ood_ds, batch_size=64, shuffle=False, num_workers=4, persistent_workers=True)\n",
    "\n",
    "    ood_likelihoods = []\n",
    "\n",
    "    progress_bar = tqdm(enumerate(ood_loader), total=len(ood_loader), ncols=110)\n",
    "    progress_bar.set_description(f\"out-of-distribution data {c}\")\n",
    "    for _, batch in progress_bar:\n",
    "        images = batch[\"image\"].to(device)\n",
    "\n",
    "        log_likelihood = inferer.get_likelihood(\n",
    "            inputs=images, vqvae_model=vqvae_model, transformer_model=transformer_model, ordering=ordering\n",
    "        )\n",
    "        ood_likelihoods.append(log_likelihood.sum(dim=(1, 2)).cpu().numpy())\n",
    "\n",
    "    ood_likelihoods = np.concatenate(ood_likelihoods)\n",
    "    all_likelihoods[c] = ood_likelihoods"
   ],
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "out-of-distribution data Hand: 100%|██████████████████████████████████████████| 16/16 [00:01<00:00, 10.28it/s]\n",
      "out-of-distribution data ChestCT: 100%|███████████████████████████████████████| 16/16 [00:01<00:00,  9.40it/s]\n",
      "out-of-distribution data BreastMRI: 100%|█████████████████████████████████████| 15/15 [00:01<00:00,  9.35it/s]\n",
      "out-of-distribution data CXR: 100%|███████████████████████████████████████████| 16/16 [00:01<00:00,  9.74it/s]\n",
      "out-of-distribution data AbdomenCT: 100%|█████████████████████████████████████| 16/16 [00:01<00:00,  9.59it/s]\n"
     ]
    }
   ],
   "execution_count": 18
  },
  {
   "cell_type": "markdown",
   "id": "5aa92638",
   "metadata": {},
   "source": [
    "## Log-likelihood plot\n",
    "\n",
    "Here, we plot the log-likelihood of the images. In this case, the lower the log-likelihood, the more unlikely the image belongs to the training set."
   ]
  },
  {
   "cell_type": "code",
   "id": "cd456a7c",
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-05T17:09:01.593702Z",
     "start_time": "2024-09-05T17:09:01.264172Z"
    }
   },
   "source": [
    "sns.set_style(\"whitegrid\", {\"axes.grid\": False})\n",
    "sns.kdeplot(in_likelihoods, bw_adjust=1, label=\"In-distribution\", fill=True, cut=True)\n",
    "for c, l in all_likelihoods.items():\n",
    "    sns.kdeplot(l, bw_adjust=1, label=f\"OOD {c}\", cut=True, fill=True)\n",
    "plt.legend(loc=\"upper right\")\n",
    "plt.xlabel(\"Log-likelihood\")"
   ],
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Text(0.5, 0, 'Log-likelihood')"
      ]
     },
     "execution_count": 19,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ],
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAkgAAAGwCAYAAABSN5pGAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8hTgPZAAAACXBIWXMAAA9hAAAPYQGoP6dpAAC/eUlEQVR4nOzdd3iUVfbA8e/0TDLJpFMSSKMElKqoFNddwAIuu9iQdZUVUBERRbFgF/eHCPYAawfEsotKEVewwK4KgsgqAUFqqCmkJ5NJm/b+/hgyElJImWQmyfk8D8/K+965753skJzce+65KkVRFIQQQgghhIfa1wMQQgghhPA3EiAJIYQQQpxFAiQhhBBCiLNIgCSEEEIIcRYJkIQQQgghziIBkhBCCCHEWSRAEkIIIYQ4i9bXA2irXC4XDocDtVqNSqXy9XCEEEII0QCKouByudBqtajVdc8TSYDURA6Hg19++cXXwxBCCCFEE/Tr1w+9Xl/nfQmQmqgq6uzXrx8ajcbHoxFCCCFEQzidTn755Zd6Z49AAqQmq1pW02g0EiAJIYQQbcy50mMkSVsIIYQQ4iwSIAkhhBBCnEUCJCGEEEKIs0gOkhBCiEZxOp3Y7XZfD0OIWul0Oq/kBkuAJIQQokEUReHUqVMUFRX5eihC1Cs0NJTOnTs3q06hBEhCCCEapCo4io6OJjAwUIrkCr+jKAplZWXk5OQA0KVLlyb3JQGSEEKIc3I6nZ7gKCIiwtfDEaJORqMRgJycHKKjo5u83CZJ2kIIIc6pKucoMDDQxyMR4tyqPqfNyZWTAEkIIUSDybKaaAu88TmVAEkIIYQQ4iySgySEEKJZMorKKSy1tdrzwoL0xIQaW+15omOSAEkIIUSTZRSVM+rFb6iwu1rtmQE6NZtm/96nQVJ6ejqjRo1i7dq19OnTh+3btzNp0iR27NhBSEiIV5/Vu3dvlixZwujRo2s819vOfFZHJwGSEEKIJisstVFhdzHjDz1aJWDJKCpnyX8PU1hqa/Dz5syZg8Vi4R//+EeLjWvQoEFs2bKF4ODgc7ZtbDC1ZcsWzGazN4bpsWjRIjZu3Minn37a4s9qqyRAEkII0WwxoUYSIoN8PQyf0ev1REVFebVPm83WIv3WpzWf5e8kSVuIc8iyZrHm0BocLoevhyKEaKZbbrmF//u//2PhwoVcdNFFDB8+nEWLFp3zdbt372b8+PH069ePa6+9ln379lW7v337dnr37o3FYgEgIyODO++8kyFDhjBw4ECuvvpqvv32W9LT05k0aRIAQ4YMoXfv3syZM8cztmeeeYZ58+Zx8cUXM3XqVMC97LVx48Zqzzty5AgTJ06kX79+/PGPf+THH3/03Fu9ejUXXnhhtfYbN26kd+/envuLFy9m//799O7dm969e7N69epan3XgwAEmTZpE//79ufjii3niiScoLS313J8zZw533XUX77zzDiNGjODiiy9m7ty57eIoGplBEqIeLsXFXZvu4nDRYQorC5ly/hRfD0kI0Uxr1qxh8uTJfPTRR6SmpjJnzhwGDx7M8OHDa21fWlrKtGnTGDZsGM8//zzp6enMmzev3mc888wz2O123n//fQIDAzl8+DCBgYF06dKFRYsWMXPmTL744gtMJhMBAQHVxvaXv/yFf/7zn/X2v3DhQh599FF69OjBsmXLuPPOO9m0aRNhYWHnfP9jx47l0KFDbN68mWXLlgHUujRYVlbG1KlTGTRoEJ988gn5+fk8/vjj/P3vf+e5557ztNu+fTtRUVG8++67nDhxgvvuu48+ffowYcKEc47Fn8kMkhD12Jmzk8NFhwkPCOeztM98PRwhhBf07t2bu+++m/j4eMaPH8/555/Ptm3b6mz/73//G5fLxbPPPkvPnj35wx/+4JndqUtmZiaDBw+md+/edOvWjT/84Q8MGTIEjUbjyfGJiIggKiqqWnASHx/PQw89RGJiIomJiXX2/9e//pUrr7ySpKQknn76aYKDg/nkk08a9P4DAgIIDAxEo9EQFRVFVFRUtSDtzPdts9lYsGABvXr1YujQoTz55JN8+umn5OXledqZzWaefPJJkpKS+MMf/sBll11W79ezrZAASYh6fJf+HWaDmWt7XsvhosMUVxb7ekhCiGaqWmqqEhUVRX5+PgBPPvkkgwYN8vwBSEtLo3fv3hgMBs9rqu7VZdKkSbz22mtMnDiRlJQU9u/f36CxnXfeeQ1qd+bztVot559/PkeOHGnQaxuq6n2fWT198ODBuFwujh496rnWo0ePasd5nPn1bMskQBKiHj+e+pHeYb1JCEkAYF/BvnO8Qgjh77Ta6tklKpUKRVEAuPfee1m7dq3nT1PdcMMNbNy4kT//+c8cPHiQ66+/nvfee++cr6s6R6w51Gq15/1UacmcoPq+nm2ZBEhC1MHmtHGg4AA9QnvQKagTWpWWo8VHz/1CIUSbFRERQVxcnOcPQFJSEgcOHKCystLTLjU19Zx9denShb/85S8sXrzYk/MEoNPpAPcBwE115vMdDgd79+71LMmFhYVRWlpKWVmZp83ZM1g6nQ6Xq/7aVVXv+8x+fv75Z9RqNQkJCU0ee1shSdpC1OFw0WHsLjvx5njUKjXRQdEcKz7m62EJ4Zcyisrb1XPO9Mc//pGXX36Zxx9/nGnTppGRkcHSpUvrfc28efP43e9+R3x8PBaLhe3bt5OUlARATEwMKpWKb775hssuuwyDwUBQUONKJHz44YfEx8eTmJjIu+++S3FxMddddx0AAwYMwGg08tJLLzFp0iR27drl2aVWJSYmhvT0dPbt20enTp0wmUzo9fpqbcaNG0dKSgpz5szh7rvvpqCggL///e/8+c9/JjIyslHjbYskQBKiDgcKDqBCRTdTNwCijFGkW9N9PCoh/EtYkJ4AnZol/z3cas8M0KkJC9Kfu6GXBAUF8frrr/PUU08xfvx4evTowQMPPMDMmTPrfI3L5eKZZ57h1KlTmEwmLr30Uh555BEAOnXqxMyZM3nxxRd55JFHGD9+fLVdYQ0xe/Zs3nzzTfbt20dcXByvvfYa4eHhAISGhvL888+zcOFCPv74Y4YOHcrMmTN54oknPK+/8sor+frrr5k0aRIWi4X58+dz7bXXVnuG0WjknXfeYd68eVx//fUYjUauuOIKT1mC9k6ltIeFQh9wOp2kpqYycODAaslpov1YuGMhXx37ivmXzgfgvV/f42TJSdb8eY2PRyZE66uoqODo0aMkJCTU2PEkZ7EJf1Pf57WhP79lBkmIOhwuPExXU1fP3yONkfx46sd6XiFExxQTapSARbQ7kqQtRB2OFh+lS1AXz99DDaGU2ksps5fV8yohhBDtgQRIQtSi3FHOqbJTdA7q7LkWaggFIK88r45XCSGEaC8kQBKiFicsJwDoHPhbgGQ2uKvf5pbn+mRMQgghWo8ESELU4kSJO0CKDor2XKsKkGQGSQgh2j8JkISoxcmSkxi1RoJ1v52RFKgNRKPSUFhR6MORCSGEaA0SIAlRi5MlJ4kOjEalUnmuqVQqQvQhEiAJIUQHIAGSELVIL0kn0lizUmywPpj8irZ/CKMQQoj6+bwO0gcffMA777xDbm4uycnJPPHEE/Tv37/O9hs2bODVV18lIyOD+Ph4HnjgAS677DLP/a+++op//etf7N27l6KiItauXUufPn0894uKili0aBFbtmwhKyuL8PBwRo8ezb333ktwcHBtjxQd0MmSk/SL7FfjuklnoqiyqPUHJIQ/KzoJZa34i0NgBIR2a73ntUPp6emMGjWqxs9I8RufBkjr169n/vz5zJ07lwEDBvDuu+8ydepUvvjiCyIiImq0//nnn5k9ezb3338/f/jDH/jss8+YMWMGq1evplevXgCUlZUxePBgxowZw+OPP16jj5ycHHJycnj44Yfp0aMHGRkZPP300+Tk5JCSktLi71n4P6fLyanSU4zsNrLGvSB9EEUVRa0/KCH8VdFJWDIE7K14RprOCDN2NCpIysrKIiUlhc2bN1NUVERUVBSjRo1ixowZhIWFVWt76NAhFi9ezPbt27FarcTExDB27FjuuOMOjMbfCmKOHDmSjIwMAAwGA5GRkfTr14+JEycydOjQesdzyy23kJyczGOPPVbt+urVq3n22Wf53//+1+D3JlqGTwOkZcuWMWHCBM8Be3PnzuWbb75h1apV3HHHHTXar1ixgksvvZTbbrsNgFmzZrF161bef/99nnnmGQDGjx8PuKPj2vTq1YtFixZ5/t69e3dmzZrFgw8+iMPhQKv1+aSa8LGcshycirPWJbYgXRBZ1iwfjEoIP1WW7w6OLp0N5laY1Sk+CZtfdD+3gQHSyZMnufHGG4mPj+ell14iNjaWQ4cO8fzzz7N582ZWrlxJaGgoAKmpqUyePJmhQ4fy5ptvEhERwe7du1mwYAHbtm1jxYoV1Q51veeee5gwYQJ2u52MjAzWrVvH5MmTuffee5k+fXpLfAVEK/FZNGCz2di7dy/Tpk3zXFOr1QwbNoydO3fW+prU1FRuvfXWatdGjBjBxo0bmzUWq9WKyWSS4EgAeA6krS1AMulMFFcWt/aQhPB/5m4Q0cPXo6jV3Llz0el0LF261HMuV9euXenbty+XX345L7/8MnPnzkVRFB577DESExNZvHgxarU7TTcmJoaEhATGjx/P8uXLq/0CHxQURFRUlKfPIUOGEBUVRUpKCldeeSWJiYnNGvuJEyeYP38+u3btory8nMTERGbPns2wYcM8bUaOHMmECRM4fvw4X3zxBWazmenTp3PjjTd6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M2nSJG644QbP67Zv386kSZPYsWMHISGN+z7c0iRAEh1efkU+MabGfUMyaAwAlDvKMelNLTEsIdoER2EhSkUFEdOmtcqsjj0zk/w33sBRWNjg5508eZIbb7yR+Ph4XnrpJWJjYzl06BDPP/88mzdvZuXKlZ4Da1NTU5k8eTJDhw7lzTffJCIigt27d7NgwQK2bdvGihUrqh1Ye8899zBhwgTsdjsZGRmsW7eOyZMnc++99zJ9+vR6xzVhwgTuueceFEUhMzOTZ599lgcffJAPP/yw1vaKouB0OtFqffeju0uXLqxevbpagJSamkpeXh6BgYE12ld9fSoqKtiwYQOPP/440dHRXHbZZa057CaRAEl0eAUVBfQJ79Oo1+g17m+QEiAJ4abr2hV9fLyvh1GruXPnotPpWLp0qefg0q5du9K3b18uv/xyXn75ZebOnYuiKDz22GMkJiayePFi1Gp3mm5MTAwJCQmMHz+e5cuXc8cdd3j6DgoKIioqytPnkCFDiIqKIiUlhSuvvJLExMQ6xxUQEOB5bXR0NH/961956qmnPPerZlfefPNNXn31VQ4ePMg777zDkCFDeOutt1i5ciV5eXnEx8dz1113cdVVVwHuw1ifeOIJfvjhB/Ly8ujSpQs33XQTf/vb36r1/fzzz3P48GG0Wi09evTgxRdfZPv27SxevBiA3r3dxy+dOSs0btw4li9fTlZWFl26uI+XWbVqFePGjWPt2rU13uOZX5877riDd955h61bt7aJAEmStEWHpigKhRWFTVpiA6SathB+rqioiC1btnDTTTfVONU9KiqKcePGsWHDBhRFYd++fRw+fJjJkyd7gqMqycnJDBs2jM8///ycz5w0aRKKorBp06ZGjXPDhg3079+/xr0XX3yR2bNns379enr37s0bb7zB2rVrmTt3Lp9//jm33norDz74oGfJzuVy0blzZ1599VU+//xzZsyYwcsvv8z69esBcDgczJgxgyFDhrBu3TpWrlzJjTfeiEqlYuzYsUyZMoWePXuyZcsWtmzZwtixYz1jiYiIYMSIEaxZswaA8vJy1q9fz3XXXVfv+3O5XHz55ZcUFxej0+ka/HXxJZlBEh2axWbBqTgJ1gc36nUSIAnRNhw/fhxFUUhKSqr1flJSEsXFxRQUFHDs2DHPtdokJiby008/nfOZoaGhREREePJv6vLPf/6TTz75BEVRKC8vJz4+nnfeeadGu3vuuYfhw4cDYLPZeOONN1i2bBmDBg0CoFu3bvz000+sXLmSiy66CJ1Oxz333ON5fbdu3UhNTeWLL75g7NixWK1WSkpK+MMf/kD37t1rvOfAwEA0Go1n5uds1113HQsWLGD69Ol8+eWXdO/enT59ap+Ff+GFF3j11Vex2Ww4HA5CQ0Or5SD5MwmQRIdWUFEA0PgASSsBkhBtiaIoLdK2vj5UKlW9bcaNG8edd94JQF5eHm+88QZTp05l1apVmEy/Ld3369fP89/Hjx+nvLycKVOmVOvLbrdXC1I++OADVq1aRWZmJpWVldjtdpKTkwF3AHfttdcydepUhg8fztChQxkzZgzR0dENem+///3veeqpp9ixYwerVq2qd/Zo6tSpXHvtteTm5rJw4UJuuukm4uLiGvQcX5MASXRohRXurclNnUGSWkhC+Lfu3bujUqlIS0vj8ssvr3E/LS0Ns9lMeHg48adzqNLS0ujbt2+NtkeOHPG0qU9hYSEFBQXExsbW285kMnmChbi4OObNm8eIESPYsGFDtVmWM3fOlZW5v+e88cYbdOrUqVp/Vcnjn3/+OQsWLODhhx9m0KBBBAUF8c4777Br1y5P2/nz53PLLbewefNmNmzYwCuvvMKyZcsYOHDgOd+fVqvlT3/6E4sWLWLXrl2enKXahIWFERcXR1xcHK+++irjxo3j/PPPp0ePHud8jq9JDpLo0AormxYgVSVpSy0kIfxbWFgYw4cP58MPP6TirFIEubm5fPbZZ4wZMwaVSkWfPn1ITExk+fLluFyuam3379/P1q1ba2xvr82KFStQq9WMHj26UWPVaNwlQ84e55mSkpLQ6/VkZmZ6Ao+qP1VJ0z///DODBg3ir3/9K3379iUuLo4TJ07U6Ktv375MmzaNf/3rX/Tq1Yt///vfAOh0uhrv/2zXX389P/74I6NGjcJsblih3S5dujB27FhefPHFBrX3NZlBEh1aUUURKlQE6YIa9TrJQRKiOntmpt8+54knnmDixIlMnTqVWbNmVdvm36lTJ+677z4AVCoV8+bNY8qUKcycOZNp06YRGRnJrl27WLBgAQMHDuTWW2+t1ndpaSm5ubk4HA7S09NZt24dH3/8Mffff/85l5IqKirIzXUflp2fn88//vEPDAaDJ9+oNiaTiSlTpjB//nwUReGCCy6gpKSEn3/+GZPJxDXXXENcXBxr165l8+bNxMbG8umnn/LLL794ZrROnjzJRx99xMiRI4mOjubo0aMcO3aMP//5z4B71156ejr79u2jU6dOmEymaqUNwB2o/fDDD9Vmtxpi0qRJ/PGPf+SXX36ptnTojyRAEh1aYWUhJp0Jtapxk6k6tXsXhgRIoqPThoWhCggg/403Wu2ZqoAAtGcVd6xPfHw8q1atYtGiRcyaNYvi4mIiIyMZPXo0M2bM8NRAAhg8eDArV65kyZIl3H777ZSWltKlSxfGjx/PtGnTagQKKSkppKSkoNPpiIqKYsCAASxfvpxLLrnknOP66KOP+OijjwAwm8307t2bN998s97SAACzZs0iPDycN954g/T0dIKDg+nbt68nn2nixIns27eP++67D5VKxdVXX81NN93Ed999B7iX7I4cOcKaNWsoKirylBiYOHEiAFdeeSVff/01kyZNwmKxVNvmf6azC2w2RI8ePRg+fDgpKSm89dZbjX59a1Ip3shG64CcTiepqakMHDjQMy0q2p4XdrzAV8e/Yt6IeY1+7fSN05k1eBY39725BUYmhH+pqKjg6NGjJCQk1NguL0eNCH9T3+e1oT+/ZQZJdGhFlUWNXl6rotfoZQZJCNxFIiVgEe2Nz5O0P/jgA0aOHEm/fv244YYb2L17d73tN2zYwFVXXUW/fv0YN24c3377bbX7X331FVOmTOHiiy+md+/e7Nu3r0YflZWVzJ07l4svvphBgwYxc+ZM8vLyvPq+RNvQnADJoDFIgCSEEO2UTwOk9evXM3/+fGbMmMGaNWtITk5m6tSp5Ofn19r+559/Zvbs2Vx//fWsXbvWc9DgwYMHPW3KysoYPHgwDzzwQJ3PffbZZ/nvf//LK6+8wnvvvUdOTg53332319+f8H9FlUWYdE07KkQCJCGEaL98GiAtW7aMCRMmcN1119GjRw/mzp1LQEAAq1atqrX9ihUruPTSS7nttttISkpi1qxZ9O3bl/fff9/TZvz48dx99911nqRcUlLCqlWrmDNnDkOHDuX888/n2WefZefOnaSmprbE2xR+rLiyuFlLbBVO2eYvhBDtkc8CJJvNxt69exk2bNhvg1GrGTZsGDt37qz1NampqTUCnxEjRjQqsNmzZw92u73ac5OSkujatasESB1QswIktV7qIAkh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7lzi4+MZM2YMS5YsobGx0XHcarWybNkyRo8ezZgxY1ixYgVyW01J6lwyQZIkqduVlpaycOFC4uLi+PLLL3n66af59NNPWb16teOc5cuXc+DAAVavXs3atWvZu3cvR48e7bQY6urquPfeexFC8M477+Dj48PGjRt5+eWX+f3vf8/XX3/No48+yqpVq/j888/bXW5zczNr165lxYoVfPDBBxQXF/Pcc885jr///vu88847PPHEE2zcuJGkpCQefvhhcnJyAGhqauL+++/H19eXTz/9lJdeeomdO3eydOlSRxlr167l888/569//SsffvghtbW1/Pvf/+60upEkSSZIkiQ5wYcffkhYWBhPPfUUkZGR3HDDDfzmN79h7dq12Gw2Ghoa+OKLL3j88ccZO3YsUVFRLFu2DJvN1inXLy8vZ86cOYSEhLB69Wrc3d0BeOWVV1i0aBFTpkyhf//+TJkyhXnz5vHRRx+1u2yz2cwzzzxDXFwcsbGx3H333SQnJzuOv/322zzwwAPMmDGDwYMH88c//pGYmBjee+89AL766itMJhPPPfccUVFRjB07lqeeeoovv/ySiooKAN577z0WLlzIlClTiIyM5JlnnpHjoCSpk8kxSJIkdbusrCwSExNRFMXx3KhRo2hqaqKkpIS6ujrMZjPx8fGO497e3kRERDgev/7667zxxhuOx5s2baJPnz7tuv59991HfHw8L774IhqNBrC33OTl5fG///u/LFmyxHGuxWLpUPLh7u7OgAEDHI9DQkKorKwE7N2GZWVljBw5ss1rRo4cybFjxwB73URHR+Ph4dHmuM1mIzs7G4PBQHl5OSNGjHAc12q1DB8+XHazSVInkgmSJEk90p133sm0adMcj0NCQtr92gkTJvDtt9+SmZlJdHQ0YE+QAJYuXdom+QBQ1fY3tmu1bW+riqLIxEWSeiDZxSZJUreLjIzkwIEDbRKHffv24enpSVhYGP369UOn03H48GHH8fr6esc4HQA/Pz8GDhzo+Dk9MTmfP/zhD9x2223Mnz+fzMxMAIKCgggJCSE/P79NuQMHDqR///6X/qYBLy8vQkJC2L9/f5vn9+/fz5AhQwB73aSnpzsStpPHVVUlIiICb29vgoODOXjwoOO4xWLp1PFZkiTJFiRJkrpYfX39GbPIZs+ezXvvvcfSpUu5++67yc7O5pVXXuHee+9FVVW8vLy49dZbWbFiBb6+vgQGBvLKK6+gKEqbbrlL8cQTT2C1Wpk3bx7vv/8+kZGR/Pa3v+Uvf/kL3t7ejB8/HpPJxJEjRxwDujvD/fffzyuvvMKAAQOIiYlhw4YNHDt2jJUrVwJw8803s2rVKhYtWsSvf/1rqqqqWLp0KbfccgtBQUEAzJ07l7feeotBgwYRERHBu+++e9GLX0qSdHYyQZIkqUv9+OOP3HrrrW2emzlzJm+++SYrVqzg448/xs/Pj5kzZ/LQQw85zlm0aBF/+tOfePDBB/Hy8mLBggUUFxdjMBg6LbbFixdjs9mYN28e69atY9asWbi5ufH222+zYsUKPDw8iIqKYt68eZ12zblz59LQ0MDy5cupqqoiMjKS1157jUGDBgH2MUxvv/02zz77LDNnzsTd3Z0pU6awaNEiRxn33Xcf5eXlPPHEE6iqyh133MHkyZOpr6/vtDglqbdThOwclySpB2hqauLaa6/liSeeYNasWc4OR5Kky5xsQZIkySWlpqZy4sQJ4uPjqa+v59VXXwXg+uuvd3JkkiT1BjJBkiTJZa1du5bs7Gx0Oh2xsbGsX7+egIAAZ4clSVIvILvYJEmSJEmSTiOn+UuSJEmSJJ1GJkiSJEmSJEmnkQmSJEmSJEnSaWSCJEmSJEmSdBqZIEmSJEmSJJ1GJkiSJEmSJEmnkQmSJEmSJEnSaWSCJEmSJEmSdJr/Byq9ELVKS3tXAAAAAElFTkSuQmCC"
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "execution_count": 19
  },
  {
   "cell_type": "markdown",
   "id": "60ab6571-6f85-4c1b-8be8-896cee74bf48",
   "metadata": {},
   "source": [
    "# Localised anomaly detection\n",
    "First we create a synthetic corruption of an in-distribution image"
   ]
  },
  {
   "cell_type": "code",
   "id": "884b152e-54a5-41b8-9d59-327991c58a20",
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-05T17:09:05.808958Z",
     "start_time": "2024-09-05T17:09:05.612312Z"
    }
   },
   "source": [
    "input_image = first(in_distribution_loader)\n",
    "image_clean = input_image[\"image\"][0, ...]\n",
    "plt.subplot(1, 2, 1)\n",
    "plt.imshow(image_clean[0, ...], cmap=\"gray\")\n",
    "plt.axis(\"off\")\n",
    "plt.title(\"Clean image\")\n",
    "image_corrupted = image_clean.clone()\n",
    "image_corrupted[0, 25:40, 40:50] = 1\n",
    "plt.subplot(1, 2, 2)\n",
    "plt.imshow(image_corrupted[0, ...], cmap=\"gray\")\n",
    "plt.axis(\"off\")\n",
    "plt.title(\"Corrupted image\")\n",
    "plt.show()"
   ],
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<Figure size 640x480 with 2 Axes>"
      ],
      "image/png": "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"
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "execution_count": 20
  },
  {
   "cell_type": "markdown",
   "id": "dc3b8023-731c-4ac7-b335-9835e85bbabd",
   "metadata": {},
   "source": [
    "Get the log-likelihood and convert into a mask of the 5% lowest-likelihood tokens"
   ]
  },
  {
   "cell_type": "code",
   "id": "3faeed43-59c1-4062-8180-2c8445b9e118",
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-05T17:09:08.066624Z",
     "start_time": "2024-09-05T17:09:07.811299Z"
    }
   },
   "source": [
    "log_likelihood = inferer.get_likelihood(\n",
    "    inputs=image_corrupted[None, ...].to(device),\n",
    "    vqvae_model=vqvae_model,\n",
    "    transformer_model=transformer_model,\n",
    "    ordering=ordering,\n",
    ")\n",
    "likelihood = torch.exp(log_likelihood)\n",
    "plt.subplot(1, 2, 1)\n",
    "plt.imshow(likelihood.cpu()[0, ...])\n",
    "plt.axis(\"off\")\n",
    "plt.title(\"Log-likelihood\")\n",
    "plt.subplot(1, 2, 2)\n",
    "mask = log_likelihood.cpu()[0, ...] < torch.quantile(log_likelihood, 0.03).item()\n",
    "plt.imshow(mask)\n",
    "plt.axis(\"off\")\n",
    "plt.title(\"Healing mask\")\n",
    "plt.show()"
   ],
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "<Figure size 640x480 with 2 Axes>"
      ],
      "image/png": "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"
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "execution_count": 21
  },
  {
   "cell_type": "markdown",
   "id": "ec053da6-8f95-4460-bbe5-577a4a956266",
   "metadata": {},
   "source": [
    "Use this mask and the trained transformer to 'heal' the sequence"
   ]
  },
  {
   "cell_type": "code",
   "id": "dd08553f-0b51-48ff-860d-fc1fabadf77c",
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-05T17:09:15.471970Z",
     "start_time": "2024-09-05T17:09:15.056811Z"
    }
   },
   "source": [
    "# flatten the mask\n",
    "mask_flattened = mask.reshape(-1)\n",
    "mask_flattened = mask_flattened[ordering.get_sequence_ordering()]\n",
    "\n",
    "latent = vqvae_model.index_quantize(image_corrupted[None, ...].to(device))\n",
    "latent = latent.reshape(latent.shape[0], -1)\n",
    "latent = latent[:, ordering.get_sequence_ordering()]\n",
    "latent = F.pad(latent, (1, 0), \"constant\", vqvae_model.num_embeddings)\n",
    "latent = latent.long()\n",
    "latent_healed = latent.clone()\n",
    "\n",
    "# heal the sequence\n",
    "# loop over tokens\n",
    "for i in range(1, latent.shape[1]):\n",
    "    if mask_flattened[i - 1]:\n",
    "        # if token is low probability, replace with Transformer's most likely token\n",
    "        logits = transformer_model(latent_healed[:, :i])\n",
    "        probs = F.softmax(logits, dim=-1)\n",
    "        # don't sample beginning of sequence token\n",
    "        probs[:, :, vqvae_model.num_embeddings] = 0\n",
    "        index = torch.argmax(probs[0, -1, :])\n",
    "        latent_healed[:, i] = index\n",
    "\n",
    "\n",
    "# reconstruct\n",
    "latent_healed = latent_healed[:, 1:]\n",
    "latent_healed = latent_healed[:, ordering.get_revert_sequence_ordering()]\n",
    "latent_healed = latent_healed.reshape((16, 16))\n",
    "\n",
    "image_healed = vqvae_model.decode_samples(latent_healed[None, ...]).cpu().detach()\n",
    "plt.imshow(image_healed[0, 0, ...], cmap=\"gray\")\n",
    "plt.axis(\"off\")\n",
    "plt.title(\"Healed image\")\n",
    "plt.show()"
   ],
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ],
      "image/png": "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oUMHe+qppxr8mub555+3TZs2fb8TbKSioiJr1qyZ7d69O8QqKirsrbfeajBu1KhRZmb25JNPNog/8cQTifnOOeccmzFjhi1evDjxefzqCPniTQGZ6Nmzp91yyy3217/+1SorK23s2LHWunVrq6iosDfffNMmTJhgv/71r+3YY4+1nj172pQpU6y6utratGljM2bMyOuHdb6f0bx5c7vlllts8uTJdvXVV9vPfvYzq6iosOeee67Rawrf1+jRo+3RRx+16667zsaPH2/r16+3J5980nr27GmLFi0K4wYPHmznnHOOPfbYY7Zx48ZQkrp8+XIza7j+8Pvf/94++ugjmzBhgv3iF7+wvn37Wm1trS1YsMA++OAD+/jjjw/2aeIQRFJAZq6//nrr3bu3/fOf/7QHHnjAzMy6dOliI0eOtDFjxpjZ/y32PvTQQ3bnnXfaww8/bC1atLCzzjrLLr/8crvgggtS+Qwzs4kTJ9ru3btt2rRpds8991h5eXn4G4emcNppp9ldd91ljzzyiN19993WvXt3u+2226yysrJBUjAzmzJlipWVldkrr7xiM2fOtBEjRtjf/vY3++lPf9rgV09lZWX29NNP2wMPPGAzZ860f//739auXTvr27ev3XbbbQf7FHGIapbb970bQMFbuHChXXjhhXbvvffa+eef39SHg8MIawpAgfPafTz22GN2xBFH2PDhw5vgiHA449dHQIH7xz/+YfPnz7dTTz3VioqKbNasWTZr1iybOHFio1p0AB5+fQQUuPfff9/uv/9+W7p0qW3ZssW6du1qF1xwgd1www0N/ggQSANJAQAQsKYAAAhICgCAIO9fSJaUlGR5HACamPeb5LS2II2ZR/W7Ur/pVnHvM2PGmukeVrHzxMyhHKif1t72/kv5vdXV1R34c/L+FADAYY+kAAAISAoAgICkAAAISAoAgKDRfw6pVtC9lXL+Tg4Hk6oESes5jKluKaS5Yz4zrTliKptUfPv27W68efPmbtzrGaXm9nbuM9MVPzHXSs2tjltVDnlVWapSK6ZSKfFvv/e/BAAcdkgKAICApAAACEgKAICApAAACBpdfRSzCh9bDZJGJUMac6vxh+rcajzXsLCvYdb3Jw0x/YnU2NLSUjfevXt3N642Gmrbtm0itmXLFnesitfW1rrxiooKN7527dpEbOvWre5YVSGk9sjw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"
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "execution_count": 22
  },
  {
   "cell_type": "markdown",
   "id": "082dd314-e328-4666-956e-2c831739537a",
   "metadata": {},
   "source": [
    "## Create anomaly maps"
   ]
  },
  {
   "cell_type": "code",
   "id": "d629c1b6-0a66-4fb5-8722-3006404afe30",
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-05T17:09:19.117665Z",
     "start_time": "2024-09-05T17:09:18.169558Z"
    }
   },
   "source": [
    "# Get a naive anomaly map using the difference\n",
    "difference_map = torch.abs(image_healed[0, 0, ...] - image_corrupted[0, ...])\n",
    "\n",
    "# Further mask with the healing mask\n",
    "resizer = torch.nn.Upsample(size=(64, 64), mode=\"nearest\")\n",
    "mask_upsampled = resizer(mask[None, None, ...].float()).int()\n",
    "\n",
    "fig, ax = plt.subplots(1, 4, figsize=(14, 8))\n",
    "plt.subplot(1, 4, 1)\n",
    "plt.imshow(image_clean[0, ...], cmap=\"gray\")\n",
    "plt.axis(\"off\")\n",
    "plt.title(\"Clean image\")\n",
    "image_corrupted = image_clean.clone()\n",
    "image_corrupted[0, 25:40, 40:50] = 1\n",
    "plt.subplot(1, 4, 2)\n",
    "plt.imshow(image_corrupted[0, ...], cmap=\"gray\")\n",
    "plt.axis(\"off\")\n",
    "plt.title(\"Corrupted image\")\n",
    "plt.subplot(1, 4, 3)\n",
    "plt.imshow(image_corrupted[0, ...] - image_clean[0, ...], cmap=\"gray\")\n",
    "plt.axis(\"off\")\n",
    "plt.title(\"Ground-Truth anomaly mask\")\n",
    "plt.subplot(1, 4, 4)\n",
    "plt.imshow(mask_upsampled[0, 0, ...] * difference_map, cmap=\"gray\")\n",
    "plt.axis(\"off\")\n",
    "plt.title(\"Predicted anomaly mask\")\n",
    "plt.show()"
   ],
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<Figure size 1400x800 with 4 Axes>"
      ],
      "image/png": "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b7xR55xzjpKTk9WlSxeNGjVK+/bt826X9bpt3LhRf/7zn5Wamqp27drpoYceUmZmpnfbMK9j1vO67777NGPGDHXv3l0pKSnq27evfvjhB0nSxIkTdf7556tZs2YaMGCAN+fmZ+xW//79demll+bYd+GFF2rIkCFR75813y9YsCD4fdKzZ89gLn///ffVs2dPNWvWTJdddpmWLl3q3f/777/XyJEjde6556pZs2bq0KGD7rjjDm3fvt273e7du/XAAw+oW7duSk5OVvv27TV48GB99913Ucf32WefqXnz5rrlllt08ODBqLf9LWvXrp0kBe+raHPToUOH9PLLL+uSSy5Rs2bNdPbZZ+uee+7Rzp07vWNGIhE9++yz6ty5c/A7Lqff4bnVRPn222/1pz/9Sa1bt1aLFi3Us2dPvfLKK8H4sv6WyJoH3HnieI8xNyfi76ulS5dq6NChatmypVJTUzVo0CB988033m2y5tKFCxfq/vvvV7t27XTWWWfpnnvuUUZGhnbt2qXbbrtNrVu3VuvWrfXwww9nm3PCjt21Zs0aJSUl6eWXX87W9/XXXyspKUnTp0/P9f4n8zvWkiVLNGTIkOD5devWzUtly0kkEtHf/vY3JScne99ZTyRWohyFjz/+WHXr1lXLli2P6v579+5V//79tXHjRl1xxRWqWbOmFi1apMcff1ybN2/WXXfdFdz21VdfVbdu3dSzZ08dOHBA7777rm666SaNGTNG55xzjnfcr776Su+//7769euncuXK6bXXXtONN96ojz/+WJUrV873ODMzM/WnP/1JZ511lkaMGKFp06bpvvvuU9myZfXEE0+oZ8+euuCCCzRx4kTdfvvtatGiherWrSvp8If1ww8/1EUXXaQ6depoy5YtmjRpkvr37693331XNWrUkHT4S8qgQYO0efNmDRw4UFWrVtX06dNzLFI1f/58/elPf1JycrKuv/56FStWTO+8844GDRqkN998UykpKfl+jsCJkN854u6779aUKVN04YUXavDgwVq8eLHGjBmjn376Sc8884x3219++UW33nqr+vbtqz/84Q9q0KBB0Pfss8+qZMmSGjJkiDIyMvK9xFaSVq5cqZtvvllXXHGF+vTpo8mTJ+umm27S2LFj1aFDB7Vu3VoDBgzQa6+9pmHDhqlhw4aSpNNPP12S9J///EcjR45Ux44dNWLECO3du1cTJkxQv379NGXKlCD957PPPtMNN9ygRo0a6dZbb9X27dt1xx136LTTTsv3mF0vvPCCypQpo2uuuUarVq3S66+/rhIlSqhYsWLatWuXrr/+en377bd65513VLt2bV1//fXBfSdMmKAzzjhD3bp1U4kSJfTxxx/r3nvvVSQS0VVXXRXc7rHHHtPYsWPVtWtXderUSd9//72GDBmi/fv3e2PJz1yPgvPxxx+rXr16at68eb7ud/DgweCi/u23364yZcooEonouuuu04IFC3T55ZerSZMmmjt3rh5++GFt3LhRd95551GPc/jw4apTp45uueUWLV26VG+//bbi4+P117/+NbjNXXfdpalTp6pHjx5q2bKlvvjiC11zzTVH/ZjWvffeq/j4eP3lL39Renp6vu778MMP6+6771ZKSor+8Ic/SMqeIhTmOeZk5syZ2rdvn6688kpVqlRJixcv1uuvv64NGzZo9OjR3m0zMzM1ZMgQpaSk6LbbbtP8+fM1fvx41a1bV/369ZOkfL+OCxcu1EcffRTc/4UXXtCwYcM0dOhQvfnmm+rXr5927typsWPH6s4779Srr756VGN39erVS3fffbeWL1+uxMTE4OeLFy/WypUrdd1110U9Z5K0atUq3Xrrrbriiit06aWXavz48Ro2bJjuvfdePfHEE7ryyiuD5zN8+HDNnDkzWJH1+eefa82aNbrssstUrVo1/fjjj3rrrbe0YsUKvfXWWypWrJgk6e9//7tmzZql/v376/TTT9eOHTv01Vdf6aefflLTpk1zHNfHH3+sG2+8Ud27d9eoUaMUExOT53P5rVq9erUkqVKlSsHPcpqbJOmee+7RlClTdNlllwUX9N544w0tXbpUEyZMCL4zPPnkk3ruuefUpUsXdenSRd99952uvvpqHThwIM/xzJs3T9dee62qV68efK//6aef9Mknn2jQoEHq27evNm3apHnz5unhhx/Odv+TMUbp+P999eOPP+qqq65SuXLlNHToUJUoUUKTJk3SgAED9Prrr2f7/XL//feratWquuGGG/Ttt99q0qRJKl++vBYtWqSaNWvq5ptv1pw5czRu3DglJiaqd+/eRzX2LFnfSadOnao//vGPXt+0adNUrlw5nXvuuXmetxP9HWvr1q0aMmSIKleurGuuuUYVKlTQ2rVro/4nW2Zmpu68887gAk9u5+C4iyBf0tLSIomJiZHrrrsu9H26du0auf3224P4mWeeibRo0SLyyy+/eLd79NFHI02aNImsX78++NnevXu922RkZER69OgRGThwoPfzxMTESNOmTSOrVq0KfrZs2bJIYmJi5LXXXos6vjVr1kQSExMjkydPDn52++23RxITEyPPP/988LOdO3dGUlJSIklJSZF33303+PlPP/0USUxMjIwePTr42f79+yOZmZnZHic5OTny9NNPBz8bP358JDExMfLBBx8EP9u3b1/koosuiiQmJka++OKLSCQSiRw6dChywQUXRK6++urIoUOHvPPTrVu3yODBg6M+R+Bkye8ckfU5veuuu7yf/+tf/4okJiZG5s+fH/ysa9eukcTExMicOXO8237xxReRxMTEyLnnnpttzhg9enQkMTEx2+NOnjw5kpiYGFmzZk2248+aNct7Ph06dIj07t07+NmMGTO8z2eW3bt3R84666zI3Xff7f188+bNkVatWnk/79WrV6RDhw6RXbt2BT/77LPPIomJiZGuXbtmP1FG//79I/379892Dnr06BHJyMgIfn7LLbdEkpKSIkOHDvXu37dv32yPY89dJBKJXH311ZFzzz3Xey5nnnlm5M9//rN3u6eeeiqSmJh41HM9CkbW59W+npHI4d95W7duDf6574+s35GPPvqod58PPvggkpiYGHn22We9n99www2RpKSk4Hd0Tr93s9jfp1mf4TvuuMO73V/+8pdImzZtgjhrLvnHP/7h3e6WW27JdsxoFi9enG1sWfPFlVdeGTl48KB3+9tvvz3Hz2xOc0+LFi28z0h+n2NucvrsjhkzJpKUlBRZt26dN9bExETve0gkEon07t070qdPnyAO+zpGIodfr+TkZG8unThxYiQxMTHSoUOHSFpaWvDzxx57LNu8G3bs9nzu2rUr0qxZs8gjjzzi3fef//xnpEWLFpE9e/ZkO64ra77/+uuvg5/NnTs3kpiYGElJSfEeO+v5uHN+TuOePn16JDExMfLll18GP2vVqlXk3nvvjTqW/v37Ry655JJIJBKJzJo1K9K0adPI3Xffne175G9Z1mfw888/j2zdujXy66+/Rt59991ImzZtIikpKZENGzZEIpHc56Yvv/wykpiYGJk6dar38zlz5ng/37p1a6Rp06aRa665xvu+/fjjj2f7HZf1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8vPPP6t48eI5rmY5Gsc69k6dOik+Pl7Tpk1T8+bNtXfv3tAr145F2O9YWVq0aKEWLVro5ptv1rRp0zRixAi99957XpmJ5s2b64orrtC1116rm266SU8//bRKlDh5lzZINjwKQ4cOVWxsrO6++25t2bIlW//q1auDrbxycvHFF2vRokWaO3dutr5du3YF+WMxMTEqVqyY9785a9eu1ezZs4/DszixYmJisl2hnTFjRrac2I4dO2rjxo3ec9q/f7/eeust73bJyclKSEjQ+PHjc0yTYFk8CpP8zBFZXyLtnJH1R477JfNoZC3td+tvpKen6z//+U+Ot9+0aZNXBX337t36z3/+oyZNmgR/aJUtW1aSv2RbOvzLOS4uTmPGjMkxlzXrc1q9enU1adJEU6ZM8Y4xb948rVix4iie5bHL+qPDnbfS0tKyfTFp3769SpQooQkTJng/z6leRti5HgVr6NChKlu2rO68884cP6/5+d/Gzp07KzMzM9v74eWXX1axYsXUuXNnSYf/Q6By5cpauHChd7uctnvMz2NL0muvveb93M4tFStW1Nlnn+39O5b/wUtISFBaWpq+//774Gd2HskSGxt71CnGucn6H1D3dYpEIt4OOPkV9nU8Vsdj7L169dLOnTt1zz33KD09PXRtg2OR20Ua+17LzMzM9nuiSpUqql69erbtT6XDK8PGjh2rKlWqaPDgwdn+Qw1H7+KLL1ZmZqaeffbZbH0HDx4MPpdnn322SpYsqddff917X0b7uyZL06ZNVadOHb366qvZPufusbK+Q9jbnIwxSsf/76uYmBh16NBBs2fP9lYubtmyRdOnT1erVq2ipiPm97GOZewlSpTQJZdcohkzZuidd95RYmKiGjdufFzGFk3Y71g7d+7M9js3KwMhpznj7LPP1hNPPKG5c+fqtttuO6n1MVmJchQSEhL06KOP6uabb1b37t3Vq1cvJSYmKiMjQ4sWLdLMmTN12WWX5Xr/IUOG6KOPPtKwYcPUp08fNW3aVHv37tXy5cs1a9YszZ49W/Hx8erSpYteeuklDR06VD169NDWrVv15ptvKiEhQT/88MNJfMb5d8455+iZZ57RHXfcodTUVC1fvlzTpk3LlgPbt29fvf7667r11ls1cOBAVatWTdOmTQu+0GVdrS5evLjuv/9+/elPf1KPHj102WWXqUaNGtq4caMWLFiguLg4Pf/88yf9eQI5yc8c0bhxY/Xp00eTJk3Srl271Lp1ay1ZskRTpkzReeedFzpPNTcdOnRQrVq1dNddd+nnn39WTEyMJk+erMqVK+f4P8X169fXXXfdpSVLlqhKlSqaPHmytm7dqgcffDC4TZMmTRQTE6MXX3xRaWlpKlWqlNq1a6cqVaroH//4h2677TZddtll6t69u+Lj47V+/Xp9+umnatmype655x5J0i233KJrr71W/fr10+9+9zvt2LEj+J/H/G6dejx06NBBJUuW1LBhw3TFFVdoz549evvtt1WlShWvoG7VqlU1cODAYCvQTp066YcfftCcOXNUuXJl73/Yws71KFj169fXo48+qltvvVUXXXSRevbsqcaNGysSiWjt2rWaPn26ihcvHmr77W7duqlt27Z64okntG7dOiUlJWnevHmaPXu2Bg0a5NUr+f3vf68XXnhBd911l5KTk7Vw4cJjWonVpEkT9ejRQ2+++abS0tKUmpqqL774IscVX8dT9+7d9eijj+r666/XgAEDtG/fPk2YMEENGjTwCoxKh//Imj9/vl566SVVr15dderUyffW0lbDhg2VkJCghx56SBs3blRcXJxmzZp1TBdr8vM6FvTYzzzzTCUmJmrmzJk6/fTTc902+HiKi4tT69atNXbsWB04cEA1atTQvHnzsqW+7dmzR126dNGFF16oxo0bKzY2Vp9//rmWLFmikSNH5njs+Ph4vfTSS7ryyiv1xz/+URMmTMhWNBX516ZNG/Xt21djxozRsmXLgt95K1eu1MyZM3XXXXfpoosuUnx8vK6++mqNGTNG1157rbp06aKlS5cGv+OiKV68uP7xj3/ouuuuU+/evYPtr3/++WetWLFC48aNk6TgPXr//ferY8eOiomJ0SWXXHJSxijphPx9NXz4cH3++efq16+f+vXrp5iYGE2aNEkZGRl5btGeH8dj7L1799Zrr72mBQsWaMSIEcdtbNGE/Y41ZcoUTZgwQeedd54SEhK0Z88evfXWW4qLi8v14vV5552nUaNG6fbbb1dcXJzuu+++k/KcuIhylM4991xNnTpV48aN0+zZszVhwgSVKlVKSUlJGjlyZLbdZVxly5bVa6+9pjFjxmjmzJn6z3/+o7i4ONWvX1833HBDUKSnffv2euCBB/Tiiy9q1KhRqlOnjkaMGKF169YV+osow4YN0969ezVt2jS99957OvPMMzVmzBg99thj3u3KlSunV155Rffff79effVVxcbGqnfv3kpNTdUNN9zg/e9Y27ZtNWnSJD377LN6/fXXlZ6ermrVqiklJUV9+/Y92U8RiCo/c8T999+vOnXqaMqUKfrwww9VtWpVXXvttd4y6aNVsmRJPf3007r33nv15JNPqlq1aho0aJAqVKigO+64I9vt69evr7/97W96+OGH9csvv6hOnTp64oknvB2BqlWrpnvvvVdjxozRXXfdpczMTL366quqUqWKevbsqerVq+uFF17QuHHjlJGRoRo1auiss87yLi537txZTz75pP7973/rscceU0JCgh588EHNnj1b//3vf4/5eedXw4YNNXr0aP373//WQw89pKpVq+rKK69UfHy87rzzTu+2I0aMUJkyZfT2229r/vz5atGihcaNG6d+/fp5y2vDzvUoeOedd56mTZum8ePHa968eZo8ebKKFSumWrVqqUuXLrryyitD/W9d8eLF9dxzz2n06NF677339M4776h27dq67bbbgh23svzlL3/Rtm3bNGvWLM2YMUOdO3fW2LFjcy2qGMaoUaNUuXJlTZs2TbNnz1bbtm31wgsvHPOKtmgqV66sp59+Wv/617/0yCOPqE6dOrrlllu0atWqbBdRRo4cqXvuuUf//ve/tW/fPvXp0+eYL6KULFlSzz//vO6//36NGTNGpUuX1vnnn6+rrrrqqJep5+d1LAxj79Wrlx555JGTsiw/y2OPPaZ//vOfevPNNxWJRNShQwe9+OKL3u+KMmXK6Morr9S8efP0/vvvKxKJKCEhQX//+9+z7XDmqlGjhl5++WX169dPgwcP1uuvv84F5+PgvvvuU3JysiZOnKgnnnhCMTExql27ti699FK1bNkyuN3w4cNVqlQpTZw4UQsWLFBKSorGjx+va6+9Ns/H6NSpk1555RU988wzGj9+vCKRiOrWret957ngggs0YMAAvfvuu5o6daoikYguueSSkzbGE/H31RlnnKE33nhDjz32mMaMGaNIJKKUlBQ98sgjxzzHHe+xJycn64wzztBPP/10UlauSeG/Y7Vp00ZLlizRe++9py1btqh8+fJKSUnRo48+mu0/4l29evXSnj17dO+996pcuXJRNyI5XopFjqUqDnCCvPzyy3rwwQc1Z84c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289uzZo1vdidI3799deo4yjsNaGAaHr37h20r7jiCq/P/c4jRa/BdiqzdU3s30W2dpp7e9tna++5/dREyRsrUQAAAAAAAELgIgoAAAAAAEAIhTqdx91WUcq+NWTLli292F3qvG3bNq9v5MiRXuwuf7fL5Nu3b+/FgwYNCtp26bhd7tSjR49c+6655hov/utf/xq0mzZt6vXZJfd2qai75P7nn3/2+uwS8MTExKBt0xbsbd2lojZNwd1OU/KXi+e17Ny9r11mvnXrVi+2y9vdLbfsFrE29cBddt6oUSOvz25j67JLYO3ydvf52C1s3bQEyX/vValSxetr0KCBF9v3dDT2ubtLgO2SPOQPc80Rp9JcUxgx1wCnHruleI0aNbzYLqN3UxHsnNW4cWMvdtMd7Zb0a9eu9WKbGgQUJbfffnvQtilwqampXnz99deflDEVNtG2MM4ptuk/Lvt9yv3OYVMSkR0rUQAAAAAAAELgIgoAAAAAAEAIXEQBAAAAAAAIoVDXRHG31pSk//f//p8XL1++3Iu7desWtIcOHer1ffPNN1588803B22b5//GG2948cSJE4N2vXr1vL5zzz3Xi1988cWg3bFjR69v2LBhXuzmtr755pten1vDQMqeo+7WEbF58zb31ubquuzWom4OnK0TYWsnuLl0NkfPxu42xjb/127PZcfkjsOOyW5x7NYIsNuf2Rop7uPYc2bzBKPlFNqaDO55stu82noUNndx9+7dQduew2i1COxnBfnDXHPEqTTXFEa21g1zDVD02dpY9nNs586dO3cGbVvTqlatWl7s1lextY1sjRQ7JwNFyZlnnhn6tnfccccJHEnhZT/jedVAcb9j2L+37G3dmpS2fiWyYyUKAAAAAABACFxEAQAAAAAACIGLKAAAAAAAACEU6pooFStW9OK1a9d68fr1673Yzd+6/PLLvT6bY+/mmJ5xxhlen62lsWrVqqC9cuVKr69y5cpe7ObF3n333V6fraswY8aMoG334/7vf//rxfv37/fi2rVrB+1169Z5fTbnzc2H27Rpk9eXkZGR63Ft7RKbH+eOyR7H5ti7dQBszQh7DitVquTFbo6em0cs+a+jJJ122mk5PmZO93XPk80LtLH7fPKqYeDmJ27YsMHrq1q1aq7jlfxznJmZ6fXZnGv39YlWRwF5Y6454lSaawojW7OFuQYo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"
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "execution_count": 23
  }
 ],
 "metadata": {
  "jupytext": {
   "formats": "py:percent,ipynb"
  },
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.10.6"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
